<SEC-DOCUMENT>0001174947-23-001137.txt : 20230921
<SEC-HEADER>0001174947-23-001137.hdr.sgml : 20230921
<ACCEPTANCE-DATETIME>20230921160143
ACCESSION NUMBER:		0001174947-23-001137
CONFORMED SUBMISSION TYPE:	10-K
PUBLIC DOCUMENT COUNT:		79
CONFORMED PERIOD OF REPORT:	20230630
FILED AS OF DATE:		20230921
DATE AS OF CHANGE:		20230921

FILER:

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

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

	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-K
<SEQUENCE>1
<FILENAME>esp-20230630.htm
<DESCRIPTION>10-K
<TEXT>
<XBRL>
<?xml version="1.0" encoding="ASCII"?>
<!-- Generated by CompSci Transform (tm) - http://www.compsciresources.com -->
<!-- Created: Thu Sep 21 14:52:04 UTC 2023 -->
<html xmlns:dtr="http://www.xbrl.org/dtr/type/2022-03-31" xmlns:esp="http://espey.com/20230630" 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:dei="http://xbrl.sec.gov/dei/2023" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:compsci="http://compsciresources.com" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:us-types="http://fasb.org/us-types/2023" xmlns:srt="http://fasb.org/srt/2023" xmlns:xl="http://www.xbrl.org/2003/XLink" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:us-gaap="http://fasb.org/us-gaap/2023" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" 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: 8pt Courier; margin: 0 0 6pt; text-align: justify; text-indent: 0.25in"></p><div>

</div><p style="border-top: Black 5.25pt double; font: bold 10pt Times New Roman, Times, Serif; margin: 6pt 0 0; text-align: center">UNITED STATES</p><div>

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

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

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

</div><p style="font: bold 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: justify"> <ix:nonNumeric contextRef="c0" format="ixt:fixed-true" name="dei:DocumentAnnualReport">&#9746;</ix:nonNumeric>ANNUAL Report Pursuant to Section 13 or 15
(d) of the Securities Exchange Act of 1934 </p><div>

</div><p style="font: bold 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: center">For the fiscal year ended <ix:nonNumeric contextRef="c0" format="ixt:date-monthname-day-year-en" name="dei:DocumentPeriodEndDate"><ix:nonNumeric contextRef="c0" format="ixt:date-monthname-day-en" name="dei:CurrentFiscalYearEndDate">June 30</ix:nonNumeric>, <ix:nonNumeric contextRef="c0" name="dei:DocumentFiscalYearFocus">2023</ix:nonNumeric></ix:nonNumeric></p><div>

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

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

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

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

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

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

</div><table cellpadding="0" cellspacing="0" style="width: 100%; font: 10pt Times New Roman, Times, Serif; border-collapse: collapse"> <tr style="font: bold 10pt Times New Roman, Times, Serif; vertical-align: top"> <td style="text-transform: uppercase; font: bold 10pt Times New Roman, Times, Serif; width: 50%; padding-right: 5.4pt; padding-left: 5.4pt; text-align: center"><ix:nonNumeric contextRef="c0" format="ixt-sec:stateprovnameen" name="dei:EntityIncorporationStateCountryCode">New York</ix:nonNumeric></td> <td style="font: bold 10pt Times New Roman, Times, Serif; width: 50%; padding-right: 5.4pt; padding-left: 5.4pt; text-align: center"><ix:nonNumeric contextRef="c0" name="dei:EntityTaxIdentificationNumber">14-1387171</ix:nonNumeric></td></tr> <tr style="vertical-align: top"> <td style="padding-right: 5.4pt; padding-bottom: 6pt; padding-left: 5.4pt; font-size: 10pt; text-align: center">(State of incorporation)</td> <td style="padding-right: 5.4pt; padding-bottom: 6pt; padding-left: 5.4pt; font-size: 10pt; text-align: center">(I.R.S. Employer's Identification No.)</td></tr> </table><div>

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

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

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



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

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

</div><table cellpadding="0" cellspacing="0" style="width: 100%; font: 10pt Times New Roman, Times, Serif; border-collapse: collapse"> <tr style="vertical-align: top"> <td style="width: 40%; padding-right: 0pt; padding-bottom: 0pt; padding-left: 0pt; text-align: center"><b>Title of each class</b></td> <td style="width: 20%; padding-right: 0pt; padding-bottom: 0pt; padding-left: 0pt; text-align: center"><b>Trading Symbol</b></td> <td style="width: 40%; padding-right: 0pt; padding-bottom: 0pt; padding-left: 0pt; text-align: center"><b>Name of each exchange on which registered</b></td></tr> <tr style="vertical-align: top"> <td style="padding-right: 0pt; padding-bottom: 6pt; padding-left: 0pt; text-align: center"><ix:nonNumeric contextRef="c0" name="dei:Security12bTitle"><span style="font-size: 10pt">Common Stock $.33-1/3 par value</span></ix:nonNumeric></td> <td style="padding-right: 0pt; padding-bottom: 6pt; padding-left: 0pt; text-align: center"><ix:nonNumeric contextRef="c0" name="dei:TradingSymbol"><span style="font-size: 10pt">ESP</span></ix:nonNumeric></td> <td style="padding-right: 0pt; padding-bottom: 6pt; padding-left: 0pt; text-align: center"><span style="font-size: 10pt"><ix:nonNumeric contextRef="c0" name="dei:SecurityExchangeName">NYSE</ix:nonNumeric> American</span></td></tr> </table><div>

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

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: justify; text-indent: 0pt">Indicate by check mark if
the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. &#9744;
Yes&#160;&#160;&#160;&#160;&#160;&#9746; <ix:nonNumeric contextRef="c0" name="dei:EntityWellKnownSeasonedIssuer">No</ix:nonNumeric></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: justify; text-indent: 0pt">Indicate by check mark if
the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act. &#9744;
Yes&#160;&#160;&#160;&#160;&#160;&#9746; <ix:nonNumeric contextRef="c0" name="dei:EntityVoluntaryFilers">No</ix:nonNumeric></p><div>

</div><p style="font: 10pt Courier; margin: 0pt 0pt 6pt; text-align: justify; text-indent: 0pt"><span style="font-family: Times New Roman, Times, Serif">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. </span>&#9746; <span style="font-family: Times New Roman, Times, Serif"><ix:nonNumeric contextRef="c0" name="dei:EntityCurrentReportingStatus">Yes</ix:nonNumeric>&#160;&#160;&#160;&#160;&#160;</span>&#9744;
<span style="font-family: Times New Roman, Times, Serif">No</span></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: justify; text-indent: 0pt">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). &#9746;
<ix:nonNumeric contextRef="c0" name="dei:EntityInteractiveDataCurrent">Yes</ix:nonNumeric>&#160;&#160;&#160;&#160;&#160;&#9744; No</p><div>

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

</div><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 80%; border-collapse: collapse; margin-bottom: 6pt; margin-left: auto; margin-right: auto;"> <tr style="vertical-align: top"> <td style="padding: 0pt; width: 50%; text-align: justify; text-indent: 0pt">&#9744; Large accelerated filer </td> <td style="padding: 0pt; width: 50%; text-align: justify; text-indent: 0pt"> &#9744; <ix:nonNumeric contextRef="c0" format="ixt-sec:entityfilercategoryen" name="dei:EntityFilerCategory">Non-accelerated filer</ix:nonNumeric> </td></tr> <tr style="vertical-align: top"> <td style="padding: 0pt; text-align: justify; text-indent: 0pt">&#9744; Accelerated filer </td> <td style="padding: 0pt; text-align: justify; text-indent: 0pt"><ix:nonNumeric contextRef="c0" format="ixt:fixed-true" name="dei:EntitySmallBusiness">&#9746;</ix:nonNumeric> Smaller reporting company </td></tr> <tr style="vertical-align: top"> <td style="padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td> <td style="padding: 0pt; text-align: justify; text-indent: 0pt"><ix:nonNumeric contextRef="c0" format="ixt:fixed-false" name="dei:EntityEmergingGrowthCompany">&#9744;</ix:nonNumeric> Emerging growth company </td></tr> </table><div>

</div><p style="font: 10pt Courier; margin: 0pt 0pt 6pt; text-align: justify; text-indent: 0pt"><span style="font-family: Times New Roman, Times, Serif">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 Exchange Act. </span>&#9744;</p><div>

</div><p style="font: 10pt Courier; margin: 0pt 0pt 6pt; text-align: justify; text-indent: 0pt"><span style="font-family: Times New Roman, Times, Serif">Indicate
by check mark whether the registrant has filed a report on and attestation to its management&#8217;s assessment of the effectiveness of
its internal control over financial reporting under Section 404(b) of the Sarbanes-Oxley Act (15 U.S.C. 7262(b)) by the registered public
accounting firm that prepared or issued its audit report. </span><ix:nonNumeric contextRef="c0" format="ixt:fixed-false" name="dei:IcfrAuditorAttestationFlag">&#9744;</ix:nonNumeric></p><div>

</div><!-- Field: Page; Sequence: 1 --><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 Courier; margin: 0pt 0pt 6pt; text-align: justify"></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">If securities are registered pursuant to Section 12(b) of the Act,
indicate by check mark whether the financial statements of the registrant included in the filing reflect the correction of an error to
previously issued financial statements. <ix:nonNumeric contextRef="c0" format="ixt:fixed-false" name="dei:DocumentFinStmtErrorCorrectionFlag">&#9744;</ix:nonNumeric></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Indicate by check mark whether any of those error corrections are
restatements that required a recovery analysis of incentive-based compensation received by any of the registrant&#8217;s executive officers
during the relevant recovery period pursuant to &#167;240.10D-1(b) &#9744;</p><div>
</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: justify; text-indent: 0pt">Indicate by check mark
whether the registrant is a shell company. &#9744; Yes&#160;&#160;&#160;&#160;&#160;<ix:nonNumeric contextRef="c0" format="ixt:fixed-false" name="dei:EntityShellCompany">&#9746;</ix:nonNumeric> No</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: justify; text-indent: 0pt">The aggregate market value
of the voting stock held by non-affiliates of the registrant was $<ix:nonFraction contextRef="c1" decimals="0" format="ixt:num-dot-decimal" name="dei:EntityPublicFloat" scale="0" unitRef="usd">27,145,853</ix:nonFraction> based upon the closing sale price of $14.20 on the NYSE American
on December 31, 2022.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0pt 6pt; text-align: justify; text-indent: 0pt">At September 19, 2023
there were <ix:nonFraction contextRef="c2" decimals="INF" format="ixt:num-dot-decimal" name="dei:EntityCommonStockSharesOutstanding" scale="0" unitRef="shares">2,706,633</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: 0; text-align: center">&#160;</p><div>

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

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Portions of the registrant's definitive proxy statement
relating to the 2023 Annual Meeting of Shareholders, to be filed with the Securities and Exchange Commission, are incorporated by reference
in Part III, Items 10 through 14 on Form 10-K as indicated herein.</p><div>

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

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

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">This Annual Report on Form 10-K contains forward-looking
statements that are based on management&#8217;s expectations, estimates, projections and assumptions. Words such as &#8220;expects,&#8221;
&#8220;anticipates,&#8221; &#8220;plans,&#8221; &#8220;believes,&#8221; &#8220;scheduled,&#8221; &#8220;estimates&#8221; and variations
of these words and similar expressions are intended to identify forward-looking statements. Forward-looking statements are made pursuant
to the safe harbor provisions of the Private Securities Litigation Reform Act of 1995, as amended. These statements are not guarantees
of future performance and involve certain risks and uncertainties that are difficult to predict. Therefore, actual future results and
trends may differ materially from what is forecast in forward-looking statements due to a variety of factors, including, without limitation:</p><div>

</div><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0" width="100%"><tr style="vertical-align: top">
<td style="width: 0.25in"></td><td style="width: 0.25in"><span>&#9679;</span></td><td style="text-align: justify">Changing priorities or decreases in the U.S. government&#8217;s defense budget (including changes in priorities
in response to terrorist threats, improvement of homeland security and general U.S. Government budgetary issues);</td></tr></table><div>

</div><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0" width="100%"><tr style="vertical-align: top">
<td style="width: 0.25in"></td><td style="width: 0.25in"><span>&#9679;</span></td><td>Termination of government contracts due to unilateral government action;</td></tr></table><div>

</div><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0" width="100%"><tr style="vertical-align: top">
<td style="width: 0.25in"></td><td style="width: 0.25in"><span>&#9679;</span></td><td style="text-align: justify">Differences in anticipated and actual program performance, including the ability to perform under long-term
fixed-price contracts within estimated costs, and performance issues with key suppliers and subcontractors;</td></tr></table><div>

</div><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0" width="100%"><tr style="vertical-align: top">
<td style="width: 0.25in"></td><td style="width: 0.25in"><span>&#9679;</span></td><td>Potential of changing prices for energy and raw materials;</td></tr></table><div>

</div><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0" width="100%"><tr style="vertical-align: top">
<td style="width: 0.25in"></td><td style="width: 0.25in"><span>&#9679;</span></td><td>General strength of the industry sectors in which our customers transact business</td></tr></table><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">All forward-looking statements speak only as of the
date of this report or, in the case of any document incorporated by reference, the date of that document. All subsequent written and oral
forward-looking statements attributable to the Company or any person acting on the Company&#8217;s behalf are qualified by the cautionary
statements in this section. The Company does not undertake any obligation to update or publicly release any revisions to forward-looking
statements to reflect events, circumstances or changes in expectations after the date of this report.</p><div>


</div><!-- Field: Page; Sequence: 2 --><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: 0; text-align: center">PART I</p><div>

</div><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 6pt" width="100%"><tr style="vertical-align: top">
<td style="width: 0"></td><td style="width: 0.5in">Item 1.</td><td>Business</td></tr></table><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; 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 highly
reliable products for use in military and severe environment applications. Design, manufacturing, and testing is performed in our 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: 0 0 6pt; 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: 0 0 6pt; text-align: justify">Espey is ISO 9001:2015 and AS9100:2016 certified.
Our primary products are power supplies, power converters, filters, power transformers, magnetic components, power distribution equipment,
UPS systems, antennas and high power radar systems. 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: 0 0 6pt; text-align: justify">Espey&#8217;s 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: 0 0 6pt; text-align: justify">In fiscal years ended June 30, 2023 and 2022,
the Company's total sales were $35,592,323 and $32,104,774, respectively. Sales to five domestic customers accounted for 23%, 18%, 16%,
13% and 11%, respectively, of total sales in 2023. Sales to four domestic customers accounted for 17%, 16%, 14% and 11%, respectively,
of total sales in 2022. This concentration level presents significant risk. A loss of one of these customers or programs related to these
customers could significantly impact the financial performance of the Company. Historically, a small number of customers have accounted
for a large percentage of the Company&#8217;s total sales in any given fiscal year. In some instances, our sales may include shipments
to more than one business unit of a particular customer.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Export sales in fiscal years 2023 and 2022 were
approximately $549,510 and $1,644,000, respectively. The decrease is primarily due to the decrease in power supply sales resulting from
the timing of contractual delivery schedules.</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The Company has at least two potential sources
of supply for a majority of its raw materials. However, certain components used in its products are available from a single or a limited
number of sources. Despite the risk associated with single or limited source suppliers, the benefits of higher quality goods and timely
delivery minimize and often limit any potential risk and can eliminate problems with part failures during production. At times, replacements
are required to cover obsolete parts.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The growth and continuing demand in the power
electronics industry across multiple manufacturing sectors, coupled with resulting supply chain disruptions from the effects of global
events, has created volatility and unpredictability in the availability of certain electronic components and, in some cases, continues
to create industry shortages. These shortages will likely continue to impact our ability to support our customer&#8217;s schedule demands,
as lead times for these components have, in some instances, increased from readily available to waiting times of nearly a year or more.
We continue to work with our customers to mitigate any adverse impact upon our ability to service their requirements. These issues, if
they persist, may cause us to miss projected delivery dates.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The President of the United States continued
the imposition of tariffs on steel and aluminum imports from various countries in 2022. 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 tariffs, the potential of additional tariffs, and the associated volatility arising from the Administration&#8217;s 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 <span style="color: windowtext">materials. From time to time the Company must identify parts to replace
parts which are no longer produced.</span></p><div>

</div><!-- Field: Page; Sequence: 3 --><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: 0 0 6pt; text-align: justify"></p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">The total backlog at June 30, 2023 was approximately
$83.6 million compared to approximately $76.8 million at June 30, 2022. The Company&#8217;s total backlog represents the estimated remaining
sales value of work to be performed under firm contracts. The funded portion of this backlog at June 30, 2023 was approximately $83.5 million.
This includes items that have been authorized and appropriated by Congress and/or funded by the customer. The unfunded backlog at June 30, 2023 was approximately $32 thousand and represents a small amount under one firm multi-year
order from a single customer. While there is no guarantee that future budgets and appropriations
will provide funding for individual programs, management has included in unfunded backlog only those programs that it believes are likely
to receive funding based on discussions with customers and program status. The unfunded backlog at June 30, 2022 was approximately $0.4
million and represented two firm multi-year orders from a single customer for which funding had not yet been appropriated by Congress
and/or funded by our customer. 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 as information
is known and estimable.</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">It is presently anticipated that a minimum of
<span style="color: windowtext">$39.5 </span>million of orders comprising the June 30, 2023 backlog will be filled during the fiscal year
ending June 30, 2024. The minimum <span style="color: windowtext">of $39.5 million</span> does not include any shipments which may be
made against orders received subsequently to the fiscal year ending June 30, 2023. The estimate of the June 30, 2023 backlog to be shipped
in fiscal year 2024 is subject to future events, which may cause the amount of the backlog actually shipped to differ from such estimate.</p><div>

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

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 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, 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 on future awards and expands our engineering team&#8217;s skillset.</p><div>

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

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

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Some of the Company's engineers and technicians
spend varying amounts of time on either the development of new products or improvements to existing products. A majority of the resulting
costs we incur relate to research that is required to support a request for quotation from a customer product-specific need usually associated
with stringent size and weight requirements. We do very little pure research as our business primarily is driven by customer product
needs and custom product development with some customer funding. The Company's expenditures for research and development were approximately
$65,427 and $32,362 in fiscal year 2023 and 2022, respectively.</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The Company had 153 employees as of <span style="color: windowtext">August
31, 2023</span>. Approximately 35% of the employees are represented by the International Brotherhood of Electrical Workers. The current
collective bargaining agreement expires on June 30, 2025. Relations with the Union are considered good.</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Compliance with federal, state and local laws
regulating the discharge of materials into the environment, or otherwise relating to the protection of the environment, did not in fiscal
year 2023, and the Company believes will not in fiscal year 2024, have a material effect upon the capital expenditures, net income, or
competitive position of the Company.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The Company&#8217;s U.S. Government contract
and subcontract orders are funded by government budgets, which operate on an October-to-September fiscal year. Normally, in February of
each year, the President of the United States presents to Congress a proposed budget for the upcoming fiscal year. This budget includes
recommended appropriations for every federal agency and is the result of months of policy and program reviews throughout the executive
branch. From February through September of each year, the appropriations and authorization committees of Congress review the President&#8217;s
budget proposals and establish the funding levels for the upcoming fiscal year in appropriations and authorization legislation. Once these
levels are enacted into law, the Executive Office of the President administers the funds to the agencies.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">There are two primary risks associated with
this process. First, the process may be delayed or disrupted because of congressional schedules, negotiations over funding levels for
programs or unforeseen world events, which could, in turn, alter the funding for a program or contract. Second, funding for multi-year
contracts can be changed by future appropriations, which could affect the timing of funds, schedules and program content.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Also, our international sales are denominated
in United States dollars. Consequently, a strengthening of the United States dollar against foreign currencies could increase the price
in local currencies of our products in foreign markets and make our products relatively more expensive than competitors&#8217; products.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt 0.75in; text-align: justify; text-indent: -0.75in">U.S. Government
Defense Contracts and Subcontracts</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Generally, U.S. Government contracts are subject to
procurement laws and regulations. Some of the Company&#8217;s contracts are governed by the Federal Acquisition Regulation (FAR), which
lays out uniform policies and procedures for acquiring goods and services by the U.S. Government, and agency-specific acquisition regulations
that implement or supplement the FAR. For example, the Department of Defense implements the FAR through the Defense Federal Acquisition
Regulation (DFAR).</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">The FAR also contains guidelines and regulations for
managing a contract after award, including conditions under which contracts may be terminated, in whole or in part, at the government&#8217;s
convenience or for default. If a contract is terminated for the convenience of the government, a contractor is entitled to receive payments
for its allowable costs and, in general, the proportionate share of fees or earnings for the work done. If a contract is terminated for
default, the government generally pays for only the work it has accepted. These regulations also subject the Company to financial audits
and other reviews by the government of its costs, performance, accounting and general business practices relating to its contracts, which
may result in adjustment of the Company&#8217;s contract-related costs and fees.</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0">Cyber or Other Security Threats or Other Disruptions</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">We routinely experience cybersecurity threats in
the form of unauthorized attempts to gain access to our sensitive information. The threats we face vary from attacks common to most industries
to more advanced attacks with the specific objective of accessing national security information. We believe our threat detection and
mitigation processes and procedures are above adequate. The processes and procedures in place are designed to detect, manage and prevent
current threats and respond quickly to detect and mitigate new threats. To ensure our systems remain protected, we continually assess
and acquire, as appropriate, new available technology and provide employee training to utilize effectively our technological assets.
Prior cyberattacks directed at us have not had a material impact on our financial results nor restricted us from being awarded contracts
from other defense companies or directly from the United States Department of Defense. However, we can provide no assurance that the
occurrence of any future event would not adversely affect our internal operations, our reputation and competitive advantage, and our
future financial results.</p><div>

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

</div><table cellpadding="0" cellspacing="0" style="width: 100%; font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 6pt"><tr style="vertical-align: top">
<td style="width: 0"></td><td style="width: 0.5in">Item 2.</td><td>Property</td></tr></table><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The Company's entire operation, including administrative,
manufacturing and engineering facilities, is located in Saratoga Springs, New York.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The Saratoga Springs plant, which the Company
owns, consists of various adjoining buildings on a 22 acre site, approximately eight acres of which is unimproved. The property is not
subject to mortgage indebtedness or any other material encumbrance. The plant has a sprinkler system throughout and contains approximately
151,000 square feet of floor space, <span style="color: windowtext">of which 90,000 is used for manufacturing, 24,000 for engineering,
33,000 for shipping and climatically secured storage, and 4,000 for offices. The offices, engineering and some manufacturing areas are
air-conditioned. In addition to assembly and wiring operations, the plant includes facilities for varnishing, potting, impregnation and
spray-painting operations. The manufacturing</span> operation also includes a complete machine shop, with welding and sheet metal fabrication
facilities adequate for substantially all of the Company's current operations. Besides normal test equipment, the Company maintains a
sophisticated on-site environmental test facility. In addition to meeting all of the Company's in-house needs, the machine shop and environmental
facilities are available to other companies on a contract basis.</p><div>

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

</div><table cellpadding="0" cellspacing="0" style="width: 100%; font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 6pt"><tr style="vertical-align: top">
<td style="width: 0"></td><td style="width: 0.5in">Item 3.</td><td>Legal Proceedings</td></tr></table><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">We are party to various litigation matters
and claims arising from time to time in the ordinary course of business.&#160;&#160;While the results of such matters cannot be predicted
with certainty, we believe that the final outcome of such matters will not have a material adverse effect on our business, financial
condition, results of operations or cash flows.&#160;&#160;Currently, there are no matters pending.</p><div>

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

</div><table cellpadding="0" cellspacing="0" style="width: 100%; font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 6pt"><tr style="vertical-align: top">
<td style="width: 0"></td><td style="width: 0.5in">Item 4.</td><td>Mine Safety Disclosures</td></tr></table><div>

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

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

</div><table cellpadding="0" cellspacing="0" style="width: 100%; font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 6pt"><tr style="vertical-align: top">
<td style="width: 0"></td><td style="width: 0.5in">Item 5.</td><td style="text-align: justify">Market for the Registrant's Common Equity and Related Stockholder Matters and Issuer Purchases of Equity
Securities</td></tr></table><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt">Price Range of Common Stock</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The table below shows the range of high and
low prices for the Company's common stock on the NYSE American (symbol "ESP"), the principal market for trading in the common
stock, for each quarterly period for the last two fiscal years ended June 30:</p><div>

</div><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 80%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <tr style="vertical-align: bottom">
    <td style="text-decoration: underline; text-align: left; padding-bottom: 1pt">2023</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">High</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">Low</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 70%; text-align: left">First Quarter</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">15.54</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">13.05</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left">Second Quarter</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">14.49</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">13.02</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">Third Quarter</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">20.59</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">14.17</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left">Fourth Quarter</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">22.96</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">15.81</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
</table><div>

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

</div><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 80%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <tr style="vertical-align: bottom">
    <td style="text-decoration: underline; text-align: left; padding-bottom: 1pt">2022</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">High</td><td style="padding-bottom: 1pt">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">Low</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 70%; text-align: left">First Quarter</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">15.40</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">13.72</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left">Second Quarter</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">16.57</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">12.76</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">Third Quarter</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">14.34</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">12.92</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left">Fourth Quarter</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">15.79</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">12.39</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: 0; text-indent: 0.5in">&#160;</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The approximate number of holders of record
of the common stock was 58 on September 18, 2023 according to records of the Company's transfer agent. Included in this number are shares
held in "nominee" or "street" name and, therefore, the number of beneficial owners of the common stock is believed
to be substantially in excess of the foregoing number.</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Effective March 13, 2023, the Company reinstated
payment of a quarterly dividend. The Company had suspended dividend payments effective March 9, 2021. The Company paid regular cash dividends
on common stock of $0.20 per share for the fiscal year ended June 30, 2023 and paid no cash dividends for the fiscal year ended June
30, 2022. Our Board of Directors assesses the Company&#8217;s dividend policy periodically. There is no assurance that the Board of Directors
will maintain the amount of the regular cash dividend during any future years.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">During fiscal year 2023, the Company did not
sell any of its common stock to the Trustees of The Espey Mfg. &amp; Electronics Corp. Employee Stock Ownership Plan Trust (the &#8220;ESOP&#8221;).</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The Company did not make any open market purchases
of equity securities in the fiscal year 2023 fourth quarter.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The following table sets forth information as
of June 30, 2023 with respect to compensation plans under which equity securities of the Company may be issued.</p><div>

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

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

</div><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <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 securities to</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Weighted-average</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Number of Securities remaining</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">be issued upon exercise</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">exercise price of</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">available for future issuance under</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 outstanding options,</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">outstanding options,</td><td>&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">equity compensation plan (excluding</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap; border-bottom: Black 1pt solid">Plan Category</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">warrants and rights</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">warrants and rights</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">securities reflected in column (a))</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap; border-bottom: Black 1pt solid">&#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">(a)</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">(b)</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">(c)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 37%; text-align: left; text-indent: -0.25in; padding-left: 0.25in">Equity compensation plans approved by security holders</td><td style="width: 1%">&#160;</td>
    <td style="width: 4%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">296,331</td><td style="white-space: nowrap; width: 4%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="vertical-align: bottom; width: 4%; text-align: right">$</td><td style="width: 12%; text-align: right">19.15</td><td style="white-space: nowrap; width: 4%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 4%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">154,169</td><td style="white-space: nowrap; width: 4%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-bottom: 1pt; text-align: left; text-indent: -0.25in; padding-left: 0.25in">Equity compensation plans not approved by security holders</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#8212;</td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="padding-bottom: 1pt; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">&#8212;</td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="border-bottom: Black 1pt solid">Total</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">296,331</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><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">154,169</td><td style="white-space: nowrap; border-bottom: Black 1pt solid; text-align: left">&#160;</td></tr>
  </table><div>



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

</div><table cellpadding="0" cellspacing="0" style="width: 100%; font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 6pt"><tr style="vertical-align: top">
<td style="width: 0%"></td><td style="width: 0.5in">Item 7.</td><td>Management's Discussion and Analysis of Financial Condition and Results of Operations</td></tr></table><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Management expects revenues in fiscal year 2024 to
be higher than revenues during fiscal year 2023 and expects net income per share to be higher in fiscal 2024 as compared to the net income
per share realized during fiscal year 2023. </p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">We successfully navigated through many of the
issues which constrained our ability to recognize revenue in fiscal 2023 related to select engineering design contracts and build to
print contracts which relied upon customer-owned designs to execute. While supply chain disruptions, including extended lead times
and part obsolescence, continue to affect our production, we are better able to manage these factors and adequately factor lead
times into internal planning schedules and new customer quotations. Inflationary costs are expected to continue but are not expected
to have a significant impact on operating income in fiscal year 2024. 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 schedule 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 $8.4 million. </p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">We made significant improvement in filling many
of our open positions in the second half of the year. 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 and the fact fewer workers, in general, are seeking
employment. Unemployment rates in the local geographic region are lower than the national average. 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, future unforeseen labor disruptions could delay shipments and result in missing our backlog fulfillment
projections and recognizing lower operating income. </p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">The Company currently expects new orders in fiscal
2024 to be greater than those received in fiscal year 2023. As market factors including competition and product costs impact gross profit
margins, management will continue to evaluate our sales strategy, employment levels, and facility costs. </p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">During fiscal year 2023, the Company received approximately
$42.4 million in new orders. Our total backlog at June 30, 2023 was approximately $83.6 million, as compared to approximately $76.8 million
at June 30, 2022. Currently, we expect a minimum of $39.5 million of orders comprising the June 30, 2023 backlog will be filled during
the fiscal year ending June 30, 2024. This $39.5 million will be supplemented by shipments which may be made against orders received
during the 2024 fiscal year. In addition to the backlog, the Company currently has outstanding opportunities representing in excess of
$69 million in the aggregate as of August 31, 2023, for both repeat and new programs. The outstanding quotations encompass various new
and previously manufactured power supplies, transformers, and subassemblies. However, there can be no assurance that the Company will
acquire any of the anticipated orders described above, many of which are subject to allocations of the United States defense spending
and factors affecting the defense industry. </p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 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, 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 on future awards and expands our engineering team's skillset. </p><div>

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

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Management, along with the Board of Directors,
continues to evaluate the need and use of the Company&#8217;s working capital. Capital expenditures, primarily for machinery and
equipment and facility upgrades are not expected to exceed $300,000 for fiscal year 2024. A majority of these expenditures will be
made to stay competitive in the marketplace and to meet the needs of current contracts. In addition, the Company is expected to
spend an amount, not to exceed $7.1 million, towards a facility and capital equipment upgrade under an award issued to us by the
United States Navy.&#160; Incurred spending is reimbursable through a milestone plan. The Company is expected to have an initial
cash outlay to satisfy income tax obligations arising from the value of the award. Expectations are that the working capital will be
required to fund orders, general operations of the business and dividend payments when applicable. Management along with the Legal
Affairs, Strategic Planning, and M&amp;A Committee of the Board of Directors will examine opportunities involving acquisitions or
other strategic options, including buying certain products or product lines, provided that such opportunities demonstrate synergies
with the Company&#8217;s existing product base and accretion to earnings.</p><div>

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

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

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Net sales for the years ended June 30, 2023 and 2022
were $35,592,323 and $32,104,774, respectively, an approximate 10.9% increase. In general, sales fluctuations within product categories
will occur during a comparable fiscal period as the direct result of product mix, influenced by the duration of specific programs and
the contractual terms of firm orders placed for product and services under those programs including contract value, scope of work and
duration. Deliverables within firm contracts are often subject to delivery schedules which also contributes to sales fluctuations between
comparable periods. The increase in net sales in fiscal year 2023 is primarily due to an increase in shipments on contracts related to
a family of power distribution transformers for a single customer when compared to sales recognized in the prior year. Sales in the current
year increased on multiple new and repeat contracts which had no or significantly fewer comparable sales in the same period last year,
primarily related to build to print contracts and, to a lesser extent, magnetic and power supply deliverables. In addition, sales
increased in the current year from a large production contract for a power supply previously designed by the Company which had no comparable
sales in the prior period and from greater sales on a large engineering design and production contract which had significantly fewer
sales in the prior year. These increases were offset, in part, by decreases in sales, between the comparable periods, due to contract
completion, timing of contractual delivery schedules and certain programs impeded by longer material lead times.</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Gross profits for the twelve months ended June 30,
2023 and 2022 were $8,050,538 and $5,472,158, respectively. Gross profit as a percentage of sales was 22.6% and 17.0%, for the same periods,
respectively. 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: 0; text-align: justify">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">The improvement in gross profit for the twelve months
ended June 30, 2023 when compared to the same period last year resulted from an increase in sales and a higher overall gross profit percentage
comprising those shipments which was influenced by product mix. In the current period, gross profit was favorably impacted from higher
sales and improved margins on a specific magnetics contract and certain build to print contracts, resulting from manufacturing improvements.
The current period gross profit was negatively impacted by significant costs incurred on a certain fixed-priced engineering design contract
for a power supply due to the ongoing unforeseen complexity of the design and the identification of additional costs due to the unavailability
of mil-spec rated parts in the marketplace resulting from part obsolescence or exceptionally long lead times. The prior year gross profit
was negatively impacted by certain programs which had higher sales in the prior year and contributed less to gross profit as the result
of cost overruns when compared to the same period this year.&#160; These cost overruns included labor from both production and engineering
efforts made and the impact of inflationary pricing on materials for certain fixed-price contracts.&#160; In addition, to a lesser extent,
specific to the prior year, gross profit was negatively impacted by the expensing of remaining development costs formerly capitalized
in inventory on a specific engineering design program in which our customer had delayed unit qualification testing and for which production
units were not expected to be manufactured in the near term.</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Selling, general and administrative expenses were
$3,750,524 for the fiscal year ended June 30, 2023; a decrease of $192,467 compared to the fiscal year ended June 30, 2022. Lower costs
were incurred for the twelve months ended June 30, 2023, comparably, as the prior year spending included specific non-recurring costs
attributed to a change in senior management. In addition, fewer costs were incurred in the current period when compared to the prior period
resulting from a decrease in board of directors fees due to a reduction of two non-employee directors and lower professional recruiting
costs incurred. The decreases in the current period were offset, in part, by increases in conference and training expenditures incurred.</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Other income for the fiscal year ended June 30, 2023
and 2022 was $406,453 and $63,914, respectively. The increase is primarily due to the increase in interest income resulting from an increase
in investment securities and an increase in fixed interest rates. Interest income is a function of the level of investments and investment
strategies that generally tend to be conservative.</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">The Company&#8217;s effective tax rate was approximately
21.9% in the fiscal year 2023 and approximately 20.6% in fiscal year 2022. The effective tax rate in fiscal 2023 is greater than the
statutory tax rate mainly due to the permanent difference for incentive stock option expense recorded for book purposes which is not
deductible for tax purposes. In the current year, there was no benefit received from ESOP dividends paid on allocated shares due to the
suspension of the company dividend in place through February 2023. The effective tax rate in fiscal 2022 was less than the statutory
tax rate mainly from the benefit derived from the ESOP dividends paid on allocated shares prior to the dividend suspension. The effective
tax rate in the twelve month period ended June 30, 2023 was higher than the prior year as the direct result of a higher income before
taxes in the current fiscal year offset, in part, by a decreased benefit derived from ESOP dividends paid on allocated shares.</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">The Company generated net income for fiscal year
2023 of $3,677,131 or $1.50 and $1.49 per share, basic and diluted, compared to net income of $1,265,127 or $0.52 per share, basic
and diluted, for fiscal year 2022. The increase in net income in the twelve months ended June 30, 2023 compared to the same period
in 2022 is primarily attributable to higher sales, a higher gross profit margin percentage, an increase in other income, and a
decrease in selling, general, and administrative expenses, offset in part, by an increase in tax expense, all discussed above.</p><div>

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

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; 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 June 30, 2023 and 2022. The existing line of credit was extended
and expires February 28, 2024.</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The Company's working capital as of June 30,
2023 and 2022 was approximately $33.2 million and $29.5 million, respectively. The Company may at times be required to repurchase shares
at the ESOP participants&#8217; request at the fair market value. During the twelve months ended June 30, 2023 and 2022, the Company did
not repurchase any shares held by the ESOP. Under existing authorizations from the Company's Board of Directors, as of June 30, 2023,
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: 0 0 6pt; text-align: justify">The table below presents the summary of cash
flow information for the fiscal years indicated:</p><div>

</div><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <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">2023</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">2022</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%; 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: 10%; text-align: right">3,899,870</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">2,219,687</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: justify">Net cash used in investing activities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(8,765,907</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">(918,339</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">(489,268</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">&#8212;</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: 6pt 0pt; 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 the increase in net income and an increase in cash collected from customer advances,
offset, in part, by an increase in prepaid expenses and other current assets, an increase in inventories, and a decrease in other accrued
expenses. Net cash used in investing activities increased in the twelve months ended June 30, 2023 as compared to the same period in
2022 primarily due to an increase in investment securities. Cash used in financing activities for the twelve months ended June 30, 2023
relates to dividend payments on common stock.</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 5.85pt 0 0; text-align: justify">During the fiscal years ended June 30,
2023 and 2022, the Company expended $512,016 and $303,561, respectively, for plant improvements and new equipment. The Company has budgeted
approximately $300,000 for new equipment and plant improvements in fiscal year 2024. Management anticipates that the funds required will
be available from current operations. A majority of these expenditures will be made to stay competitive in the marketplace and to meet the needs of current contracts. In addition,
the Company is expected to spend an amount, not to exceed $7.1 million, towards a facility and capital equipment upgrade under an award
issued to us by the United States Navy. Incurred spending is reimbursable through a milestone plan.</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 5.85pt 0 0; text-align: justify">Management believes that the Company's
reserve for bad debts of $3,000 is adequate given the customers with whom the Company does business. Historically, bad debt expense has
been minimal.</p><div>

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

</div><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0" width="100%"><tr style="vertical-align: top">
<td style="width: 0"></td><td style="width: 0.5in">Item 8.</td><td style="text-align: justify">Financial Statements and Supplementary Data</td></tr></table><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Report of Independent Registered Public Accounting
Firm (PCAOB ID <ix:nonNumeric contextRef="c0" name="dei:AuditorFirmId">317</ix:nonNumeric>)</p><div>

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

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

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

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

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: center">REPORT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING
FIRM</p><div>

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

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0">To the Stockholders and Board of Directors of </p><div>

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

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

</div><p style="font: bold 10pt Times New Roman, Times, Serif; margin: 0; ">Opinion on the Financial Statements</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify; ">We have audited the accompanying
balance sheets of Espey Mfg. &amp; Electronics Corp. (the Company) as of June 30, 2023 and 2022, the related statements of comprehensive
income, changes in stockholders&#8217; equity and cash flows for the years then ended, and the related notes to the financial statements
(collectively, the financial statements). In our opinion, the financial statements present fairly, in all material respects, the financial
position of the Company as of June 30, 2023 and 2022, and the results of its operations and its cash flows for the years then ended, in
conformity with accounting principles generally accepted in the United States of America.</p><div>

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

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify; ">These financial statements
are the responsibility of the Company&#8217;s management. Our responsibility is to express an opinion on the Company&#8217;s financial
statements based on our audits. We are a public accounting firm registered with the Public Company Accounting Oversight Board (United
States) (PCAOB) and are required to be independent with respect to the Company in accordance with U.S. federal securities laws and the
applicable rules and regulations of the Securities and Exchange Commission and the PCAOB.</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify; ">We conducted our audits in
accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain reasonable assurance
about whether the financial statements are free of material misstatement, whether due to error or fraud. The Company is not required to
have, nor were we engaged to perform, an audit of its internal control over financial reporting. As part of our audits we are required
to obtain an understanding of internal control over financial reporting but not for the purpose of expressing an opinion on the effectiveness
of the Company&#8217;s internal control over financial reporting. Accordingly, we express no such opinion.</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify; ">Our audits included performing
procedures to assess the risks of material misstatement of the financial statements, whether due to error or fraud, and performing procedures
that respond to those risks. Such procedures included examining, on a test basis, evidence regarding the amounts and disclosures in the
financial statements. Our audits also included evaluating the accounting principles used and significant estimates made by management,
as well as evaluating the overall presentation of the financial statements. We believe that our audits provide a reasonable basis for
our opinion.</p><div>

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

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">The critical audit matters communicated below are
matters arising from the current period audit of the financial statements that were communicated or required to be communicated to the
audit committee and that: (1) relate to accounts or disclosures that are material to the financial statements and (2) involved our especially
challenging, subjective, or complex judgments. The communication of critical audit matters does not alter in any way our opinion on the
financial statements, taken as a whole, and we are not, by communicating the critical audit matters below, providing separate opinions
on the critical audit matters or on the accounts or disclosures to which they relate.</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"><b>Valuation of Inventory Costs Related to Contracts
in Process and Work in Process</b></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">As discussed in Notes 2 and 5 to the financial statements,
inventory relating to contracts in process and work in process is valued at cost, including factory overhead incurred to date. Contract
costs include material, subcontract costs, labor, and an allocation of overhead costs. The costs attributed to units delivered under contracts
are based on the estimated average cost of all units expected to be produced. Certain contracts are expected to extend beyond twelve months.</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">The estimation of total cost at completion of a contract
is subject to variables involving contract costs and estimates as to the length of time to complete the contract. 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. When a change
in expected sales value or estimated cost is determined, changes are reflected in current period earnings<span style="color: windowtext">.</span>
Due to the magnitude of the inventory, and the subjectivity involved in estimating the total cost at completion we identified the evaluation
of the estimate to complete as a critical audit matter, which required a high degree of auditor judgment.</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"></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 -->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: 0; text-align: justify">Addressing the matter involved performing subjective
procedures and evaluating audit evidence in connection with forming our overall opinion on the financial statements. The primary procedures
performed included the following:</p><div>

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

</div><table cellpadding="0" cellspacing="0" style="width: 100%; font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0"><tr style="vertical-align: top">
<td style="width: 0.25in"></td><td style="width: 0.25in"><span>&#9679;</span></td><td style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif">We obtained an understanding of the process and
assumptions used by management to develop estimates to complete including labor, overhead and materials.</span></td></tr></table><div>

</div><table cellpadding="0" cellspacing="0" style="width: 100%; font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0"><tr style="vertical-align: top">
<td style="width: 0.25in"></td><td style="width: 0.25in"><span>&#9679;</span></td><td style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif">We tested total cost at completion of a contract
by using process employed by management, including:</span></td></tr></table><div>

</div><table cellpadding="0" cellspacing="0" style="width: 100%; font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0"><tr style="vertical-align: top">
<td style="width: 0.75in"></td><td style="width: 0.25in">o</td><td style="text-align: justify">Testing the completeness and accuracy of the source information used;</td></tr></table><div>

</div><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0" width="100%"><tr style="vertical-align: top">
<td style="width: 0.75in"></td><td style="width: 0.25in">o</td><td style="text-align: justify">Testing the mathematical accuracy of management&#8217;s calculations;</td></tr></table><div>

</div><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0" width="100%"><tr style="vertical-align: top">
<td style="width: 0.75in"></td><td style="width: 0.25in">o</td><td style="text-align: justify">Reviewing expected gross margin on contracts;</td></tr></table><div>

</div><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0" width="100%"><tr style="vertical-align: top">
<td style="width: 0.75in"></td><td style="width: 0.25in">o</td><td style="text-align: justify">Evaluating the reasonableness and consistency of methodology and assumptions applied by management; and</td></tr></table><div>

</div><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0" width="100%"><tr style="vertical-align: top">
<td style="width: 0.75in"></td><td style="width: 0.25in">o</td><td style="text-align: justify">Performing a retrospective review of the prior-year estimates used to identify potential bias of management
judgements.</td></tr></table><div>

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

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt">/s/ <ix:nonNumeric contextRef="c0" name="dei:AuditorName">Freed Maxick CPAs, P.C.</ix:nonNumeric></p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0">We have served as the Company's auditor since 2014.</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0"><ix:nonNumeric contextRef="c0" name="dei:AuditorLocation">Buffalo, New York</ix:nonNumeric></p><div>

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

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

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

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

</div><p style="border-bottom: Black 0.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0"><span style="text-decoration: none">June
30, 2023 and 2022</span></p><div>

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

</div><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <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">2023</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">2022</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">ASSETS</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">&#160;</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; width: 74%; text-align: left">Cash and cash equivalents</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="0" unitRef="usd">2,748,755</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="0" unitRef="usd">8,104,060</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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" scale="0" unitRef="usd">11,964,673</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" scale="0" unitRef="usd">3,708,779</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, net of allowance of $<ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" unitRef="usd"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" unitRef="usd">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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccountsReceivableNetCurrent" scale="0" unitRef="usd">5,755,282</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccountsReceivableNetCurrent" scale="0" unitRef="usd">5,733,174</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">Income tax receivable</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:IncomeTaxesReceivable" scale="0" unitRef="usd">35,666</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; 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: 20pt">Inventories:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:InventoryRawMaterials" scale="0" unitRef="usd">1,889,702</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:InventoryRawMaterials" scale="0" unitRef="usd">2,037,483</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 50pt">Work-in-process</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">681,300</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:InventoryWorkInProcess" scale="0" unitRef="usd">315,547</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; padding-bottom: 1pt">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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:InventoryForLongTermContractsOrPrograms" scale="0" unitRef="usd">17,318,579</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:InventoryForLongTermContractsOrPrograms" scale="0" unitRef="usd">16,207,419</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: 80pt; text-align: left">Total inventories</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">19,889,581</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:InventoryNet" scale="0" unitRef="usd">18,560,449</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: 20pt; text-align: left; padding-bottom: 1pt">Prepaid expenses and other current assets</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" scale="0" unitRef="usd">4,282,477</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" scale="0" unitRef="usd">992,774</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: 80pt; 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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AssetsCurrent" scale="0" unitRef="usd">44,676,434</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AssetsCurrent" scale="0" unitRef="usd">37,099,236</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left; padding-bottom: 1pt">Property, plant and equipment, net</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" unitRef="usd">2,825,089</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" unitRef="usd">2,797,993</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: 80pt; 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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Assets" scale="0" unitRef="usd">47,501,523</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Assets" scale="0" unitRef="usd">39,897,229</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></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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccountsPayableCurrent" scale="0" unitRef="usd">1,212,375</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccountsPayableCurrent" scale="0" unitRef="usd">2,079,177</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; padding-bottom: 1pt">Salaries and wages</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">890,748</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccruedSalariesCurrent" scale="0" unitRef="usd">627,187</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; padding-bottom: 1pt">Vacation</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">685,188</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccruedVacationCurrent" scale="0" unitRef="usd">666,380</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; padding-bottom: 1pt">Other</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">547,747</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherEmployeeRelatedLiabilitiesCurrent" scale="0" unitRef="usd">752,554</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">Payroll and other taxes withheld</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">66,042</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccruedPayrollTaxesCurrent" scale="0" unitRef="usd">55,292</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">Contract liabilities</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">8,081,838</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ContractWithCustomerLiabilityCurrent" scale="0" unitRef="usd">3,384,474</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">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"><div style="-sec-ix-hidden: hidden-fact-1">&#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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TaxesPayableCurrent" scale="0" unitRef="usd">54,722</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: 80pt; 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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:LiabilitiesCurrent" scale="0" unitRef="usd">11,483,938</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:LiabilitiesCurrent" scale="0" unitRef="usd">7,619,786</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left; padding-bottom: 1pt">Deferred tax liabilities</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="esp:DeferredTaxLiability" scale="0" unitRef="usd">137,827</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="c4" decimals="0" format="ixt:num-dot-decimal" name="esp:DeferredTaxLiability" scale="0" unitRef="usd">177,829</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: 80pt; text-align: left">Total liabilities</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">11,621,765</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Liabilities" scale="0" unitRef="usd">7,797,615</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: 80pt; text-align: left">&#160;</td><td>&#160;</td>
    <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 14)</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><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-3">&#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">&#160;</td><td>&#160;</td>
    <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 $<ix:nonFraction contextRef="c3" decimals="2" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" unitRef="usdPershares"><ix:nonFraction contextRef="c4" decimals="2" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" unitRef="usdPershares">.33</ix:nonFraction></ix:nonFraction>-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="text-indent: -10pt; padding-left: 60pt; text-align: left; padding-bottom: 1pt">Authorized <ix:nonFraction contextRef="c3" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesAuthorized" scale="0" unitRef="shares"><ix:nonFraction contextRef="c4" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesAuthorized" scale="0" unitRef="shares">10,000,000</ix:nonFraction></ix:nonFraction> shares; Issued <ix:nonFraction contextRef="c3" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesIssued" scale="0" unitRef="shares"><ix:nonFraction contextRef="c4" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesIssued" scale="0" unitRef="shares">3,129,874</ix:nonFraction></ix:nonFraction> shares as of June 30, 2023 and 2022. Outstanding <ix:nonFraction contextRef="c3" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares"><ix:nonFraction contextRef="c4" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares">2,702,633</ix:nonFraction></ix:nonFraction> as of June 30, 2023 and 2022 (includes <ix:nonFraction contextRef="c3" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesHeldInEmployeeTrustShares" scale="0" unitRef="shares">233,645</ix:nonFraction> and <ix:nonFraction contextRef="c4" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesHeldInEmployeeTrustShares" scale="0" unitRef="shares">256,293</ix:nonFraction> Unearned ESOP Shares, respectively)</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">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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CommonStockValue" scale="0" unitRef="usd">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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AdditionalPaidInCapitalCommonStock" scale="0" unitRef="usd">23,283,245</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AdditionalPaidInCapitalCommonStock" scale="0" unitRef="usd">23,104,693</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 loss</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" sign="-" unitRef="usd">2,429</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" scale="0" sign="-" unitRef="usd">1,932</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">Retained&#160;&#160;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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="0" unitRef="usd">21,867,720</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="0" unitRef="usd">18,679,857</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="esp:TotalStockholdersEquityBeforyEsopAndTreasuryStock" scale="0" unitRef="usd">46,191,827</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="c4" decimals="0" format="ixt:num-dot-decimal" name="esp:TotalStockholdersEquityBeforyEsopAndTreasuryStock" scale="0" unitRef="usd">42,825,909</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt; text-align: left">Less: &#160;&#160;&#160;Unearned ESOP shares</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">4,273,378</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="c4" decimals="0" format="ixt:num-dot-decimal" name="esp:UnearnedEsopSharesCost" scale="0" unitRef="usd">4,687,604</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 60pt; text-align: left; padding-bottom: 1pt">Cost of <ix:nonFraction contextRef="c3" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:TreasuryStockCommonShares" scale="0" unitRef="shares"><ix:nonFraction contextRef="c4" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:TreasuryStockCommonShares" scale="0" unitRef="shares">427,241</ix:nonFraction></ix:nonFraction> shares of common stock in treasury as of June 30, 2023 and 2022</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">6,038,691</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:TreasuryStockValue" scale="0" unitRef="usd">6,038,691</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: 80pt; text-align: left">Total stockholders' 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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd">35,879,758</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd">32,099,614</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">&#160;</td><td>&#160;</td>
    <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: 80pt; 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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="0" unitRef="usd">47,501,523</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="0" unitRef="usd">39,897,229</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: 0">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0">The accompanying notes are an integral part of the financial statements.</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 -->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: 0">Espey Mfg. &amp; Electronics Corp.</p><div>

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

</div><p style="border-bottom: Black 0.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0"><span style="text-decoration: none">Years
Ended June 30, 2023 and 2022</span></p><div>

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

</div><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap; text-align: right">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">2023</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">2022</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">&#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: 74%; 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="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd">35,592,323</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">32,104,774</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="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CostOfRevenue" scale="0" unitRef="usd">27,541,785</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CostOfRevenue" scale="0" unitRef="usd">26,632,616</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: 0.5in">Gross profit</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">8,050,538</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">5,472,158</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="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="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="0" unitRef="usd">3,750,524</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">3,942,991</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: 0.5in">Operating income</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">4,300,014</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">1,529,167</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></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></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0.5in">Interest income</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:InvestmentIncomeInterestAndDividend" scale="0" unitRef="usd">359,617</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:InvestmentIncomeInterestAndDividend" scale="0" unitRef="usd">12,153</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: 0.5in">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="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherNonoperatingIncome" scale="0" unitRef="usd">46,836</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">51,761</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt; padding-left: 60pt">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="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NonoperatingIncomeExpense" scale="0" unitRef="usd">406,453</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">63,914</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">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="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncomeLossAttributableToParent" scale="0" unitRef="usd">4,706,467</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:IncomeLossAttributableToParent" scale="0" unitRef="usd">1,593,081</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="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="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" unitRef="usd">1,029,336</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">327,954</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; padding-bottom: 2.5pt; padding-left: 60pt">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="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd">3,677,131</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">1,265,127</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="text-decoration: none; vertical-align: bottom; ">
    <td style="text-decoration: none; padding-bottom: 2.5pt">&#160;</td><td style="text-decoration: none; padding-bottom: 2.5pt">&#160;</td>
    <td style="text-decoration: none; text-align: left">&#160;</td><td style="text-decoration: none; text-align: right">&#160;</td><td style="text-decoration: none; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="text-decoration: none; padding-bottom: 2.5pt">&#160;</td>
    <td style="text-decoration: none; text-align: left">&#160;</td><td style="text-decoration: none; text-align: right">&#160;</td><td style="text-decoration: none; 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-align: left">Other comprehensive income (loss), 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></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-bottom: 1pt; padding-left: 0.5in">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="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" scale="0" sign="-" unitRef="usd">497</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">429</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 60pt">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="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="0" unitRef="usd">3,676,634</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">1,265,556</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>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></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0.5in">Basic</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">1.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="c5" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareBasic" scale="0" unitRef="usdPershares">0.52</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 0.5in">Diluted</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">1.49</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">0.52</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></tr>
  <tr style="vertical-align: bottom; ">
    <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></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0.5in">Basic</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:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" unitRef="shares">2,454,856</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:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" unitRef="shares">2,431,904</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 0.5in">Diluted</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:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" unitRef="shares">2,471,016</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:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" unitRef="shares">2,431,904</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: 0">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0">The accompanying notes are an integral part of the financial statements.</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 -->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: 0; text-align: justify">Espey Mfg. &amp; Electronics Corp.</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; border-bottom: Black 0.5pt solid">Years Ended June 30, 2023 and 2022</p><div>

</div><table cellpadding="0" cellspacing="0" style="font: 9pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <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">&#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">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="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="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="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="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="font: 9pt Times New Roman, Times, Serif">&#160;</td><td style="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="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="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Shares</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Amount</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Par Value</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">(Loss) Income</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Earnings</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Shares</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Amount</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Shares</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td><td style="font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Equity</td><td style="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="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 19%; padding-bottom: 1pt">Balance as of June 30, 2021</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 6%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c6" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares">2,702,633</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 6%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c6" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd">1,043,291</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 6%; 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">23,026,096</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 6%; 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" sign="-" unitRef="usd">2,361</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">)</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 6%; 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">17,414,730</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 6%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c10" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares">427,241</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 6%; 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" sign="-" unitRef="usd">6,038,691</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">)</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 6%; 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">5,110,770</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">)</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; width: 6%; 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" unitRef="usd">30,332,295</ix:nonFraction></td><td style="padding-top: 6pt; 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="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">Comprehensive income:</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; 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-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left; text-indent: -9pt; padding-left: 27pt">Net income</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c13" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd">1,265,127</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; 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">1,265,127</ix:nonFraction></td><td style="padding-top: 6pt; 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-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left; padding-bottom: 1pt; text-indent: -9pt; padding-left: 27pt">Other comprehensive income, net of tax of $<ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" scale="0" unitRef="usd">90</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right"><ix:nonFraction contextRef="c14" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" scale="0" unitRef="usd">429</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="padding-top: 6pt; 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">429</ix:nonFraction></td><td style="padding-top: 6pt; 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="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left; padding-bottom: 1pt">Total comprehensive income</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="padding-top: 6pt; 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:ComprehensiveIncomeNetOfTax" scale="0" unitRef="usd">1,265,556</ix:nonFraction></td><td style="padding-top: 6pt; 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="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">Stock-based compensation</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c15" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationGross" scale="0" unitRef="usd">176,696</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationGross" scale="0" unitRef="usd">176,696</ix:nonFraction></td><td style="padding-top: 6pt; 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-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt">Reduction of unearned ESOP shares</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; text-align: right">(<ix:nonFraction contextRef="c15" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan" scale="0" sign="-" unitRef="usd">98,099</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">)</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; text-align: right">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c16" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan" scale="0" unitRef="usd">423,166</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; text-align: left">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 1pt solid; font: 9pt Times New Roman, Times, Serif; text-align: right"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan" scale="0" unitRef="usd">325,067</ix:nonFraction></td><td style="padding-top: 6pt; 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="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">Balance as of June 30, 2022</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c17" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares">2,702,633</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c17" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd">1,043,291</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c18" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd">23,104,693</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="padding-top: 6pt; 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" sign="-" unitRef="usd">1,932</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="padding-top: 6pt; 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">18,679,857</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c21" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares">427,241</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="padding-top: 6pt; 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" sign="-" unitRef="usd">6,038,691</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="padding-top: 6pt; 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" sign="-" unitRef="usd">4,687,604</ix:nonFraction></td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="padding-top: 6pt; font: 9pt Times New Roman, Times, Serif; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd">32,099,614</ix:nonFraction></td><td style="padding-top: 6pt; 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: 0"><b>&#160;</b></p><div>

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

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

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; border-bottom: Black 0.5pt solid">Years Ended June 30, 2023 and 2022</p><div>

</div><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 9pt Times New Roman, Times, Serif">
  <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">Accumulated</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><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">
    <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">Capital in</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Other</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><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Unearned</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Total</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">Outstanding</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Common</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Excess of</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Comprehensive</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Retained</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Treasury</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Treasury</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">ESOP</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Stockholders&#8217;</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">Shares</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">Amount</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">Par Value</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">Loss</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">Earnings</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">Shares</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">Amount</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">Shares</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">Equity</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-top: 6pt; width: 19%; padding-bottom: 1pt">Balance as of June 30, 2022</td><td style="padding-top: 6pt; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; width: 1%; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="padding-top: 6pt; width: 6%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c17" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares">2,702,633</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="padding-top: 6pt; width: 6%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c17" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd">1,043,291</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="padding-top: 6pt; width: 6%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c18" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd">23,104,693</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="padding-top: 6pt; width: 6%; border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c19" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd">1,932</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">)</td><td style="padding-top: 6pt; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="padding-top: 6pt; width: 6%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c20" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd">18,679,857</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; width: 1%; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="padding-top: 6pt; width: 6%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c21" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares">427,241</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="padding-top: 6pt; width: 6%; border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c21" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd">6,038,691</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">)</td><td style="padding-top: 6pt; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="padding-top: 6pt; width: 6%; border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c22" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd">4,687,604</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">)</td><td style="padding-top: 6pt; width: 1%; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; width: 1%; border-bottom: Black 1pt solid; text-align: left">$</td><td style="padding-top: 6pt; width: 6%; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd">32,099,614</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; width: 1%; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-top: 6pt; text-align: left">Comprehensive income:</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-top: 6pt; text-align: left; padding-left: 0.25in">Net income</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right"><ix:nonFraction contextRef="c23" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd">3,677,131</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd">3,677,131</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding: 6pt 5pt 1pt 27pt; text-align: left; text-indent: -9pt">Other comprehensive loss, net&#160;of tax of $<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" scale="0" unitRef="usd">104</ix:nonFraction></td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt; text-align: right">(<ix:nonFraction contextRef="c24" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" scale="0" sign="-" unitRef="usd">497</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">)</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="padding-top: 6pt; 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">497</ix:nonFraction></td><td style="padding-top: 6pt; 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-top: 6pt; text-align: left; padding-bottom: 1pt">Total comprehensive income</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="0" unitRef="usd">3,676,634</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-top: 6pt; text-align: left">Stock-based compensation</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right"><ix:nonFraction contextRef="c25" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationGross" scale="0" unitRef="usd">227,132</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationGross" scale="0" unitRef="usd">227,132</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-top: 6pt; text-align: left; text-indent: -0.25in; padding-left: 0.25in">Dividends paid on common stock $<ix:nonFraction contextRef="c0" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:CommonStockDividendsPerShareCashPaid" scale="0" unitRef="usdPershares">0.20</ix:nonFraction> per share</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">(<ix:nonFraction contextRef="c23" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DividendsCommonStockCash" scale="0" unitRef="usd">489,268</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">)</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-top: 6pt">&#160;</td>
    <td style="padding-top: 6pt; text-align: left">&#160;</td><td style="padding-top: 6pt; text-align: right">(<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DividendsCommonStockCash" scale="0" unitRef="usd">489,268</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt">Reduction of unearned ESOP shares</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c25" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan" scale="0" sign="-" unitRef="usd">48,580</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">)</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: right">&#160;</td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c26" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan" scale="0" unitRef="usd">414,226</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 1pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan" scale="0" unitRef="usd">365,646</ix:nonFraction></td><td style="padding-top: 6pt; 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-top: 6pt; padding-bottom: 2.5pt">Balance as of June 30, 2023</td><td style="padding-top: 6pt; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c27" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares">2,702,633</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="padding-top: 6pt; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c27" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd">1,043,291</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="padding-top: 6pt; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c28" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd">23,283,245</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="padding-top: 6pt; border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction contextRef="c29" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd">2,429</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-top: 6pt; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="padding-top: 6pt; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c30" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd">21,867,720</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="padding-top: 6pt; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c31" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" unitRef="shares">427,241</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-top: 6pt; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="padding-top: 6pt; border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction contextRef="c31" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd">6,038,691</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-top: 6pt; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="padding-top: 6pt; border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction contextRef="c32" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" sign="-" unitRef="usd">4,273,378</ix:nonFraction></td><td style="padding-top: 6pt; white-space: nowrap; padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-top: 6pt; padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-top: 6pt; border-bottom: Black 2.5pt double; text-align: left">$</td><td style="padding-top: 6pt; border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:StockholdersEquity" scale="0" unitRef="usd">35,879,758</ix:nonFraction></td><td style="padding-top: 6pt; 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: 0"><b>&#160;</b></p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0">The accompanying notes are an integral part of the financial statements.</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 -->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: 0">Espey Mfg. &amp; Electronics Corp.</p><div>

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

</div><p style="border-bottom: Black 0.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0">Years Ended June 30, 2023 and 2022</p><div>

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

</div><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap; text-align: right">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">2023</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">2022</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="width: 74%; text-align: left; padding-left: 9pt">Net income</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:NetIncomeLoss" scale="0" unitRef="usd">3,677,131</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:NetIncomeLoss" scale="0" unitRef="usd">1,265,127</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 9pt">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; ">
    <td style="text-align: left; padding-left: 9pt">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">227,132</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:ShareBasedCompensation" scale="0" unitRef="usd">176,696</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: 9pt">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">484,920</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:Depreciation" scale="0" unitRef="usd">494,635</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-left: 9pt">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">365,646</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:EmployeeStockOwnershipPlanESOPCompensationExpense" scale="0" unitRef="usd">325,067</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-left: 9pt">Deferred income tax (benefit) 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:DeferredIncomeTaxExpenseBenefit" scale="0" sign="-" unitRef="usd">40,002</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="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="0" unitRef="usd">9,271</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-left: 9pt">Gain on disposal of 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:GainLossOnDispositionOfAssets" scale="0" unitRef="usd">2,500</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="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:GainLossOnDispositionOfAssets" scale="0" unitRef="usd">119</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: 9pt">&#160;</td><td>&#160;</td>
    <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; padding-left: 9pt">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="text-align: left; padding-left: 27pt">Increase in trade accounts receivables</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">22,108</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="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="0" unitRef="usd">379,393</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-left: 27pt">(Increase) decrease in income tax 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:IncreaseDecreaseInIncomeTaxesReceivable" scale="0" unitRef="usd">35,666</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="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInIncomeTaxesReceivable" scale="0" sign="-" unitRef="usd">249,602</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-left: 27pt">(Increase) 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" unitRef="usd">1,329,132</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="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInInventories" scale="0" sign="-" unitRef="usd">231,443</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-left: 27pt">Increase in prepaid expenses and other current assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="0" unitRef="usd">3,289,703</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="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="0" unitRef="usd">292,477</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="text-align: left; padding-left: 27pt">Decrease in accounts payable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInAccountsPayable" scale="0" sign="-" unitRef="usd">866,802</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="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInAccountsPayable" scale="0" sign="-" unitRef="usd">638,996</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-left: 27pt">Increase 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" unitRef="usd">263,561</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:IncreaseDecreaseInAccruedSalaries" scale="0" unitRef="usd">151,520</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-left: 27pt">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">18,808</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="esp:IncreaseDecreaseInVacationAccrual" scale="0" sign="-" unitRef="usd">6,231</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-left: 27pt">(Decrease) 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" sign="-" unitRef="usd">204,807</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="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInOtherAccruedLiabilities" scale="0" unitRef="usd">626,540</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-left: 27pt">Increase (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" unitRef="usd">10,750</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="esp:IncreasedecreaseInPayrollAndOtherTaxesWithheld" scale="0" sign="-" unitRef="usd">354,589</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-left: 27pt">Increase in contract liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" scale="0" unitRef="usd">4,697,364</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:IncreaseDecreaseInContractWithCustomerLiability" scale="0" unitRef="usd">306,869</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; padding-left: 27pt">(Decrease) 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" sign="-" unitRef="usd">54,722</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:IncreaseDecreaseInAccruedIncomeTaxesPayable" scale="0" unitRef="usd">54,722</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: 1pt; padding-left: 76.5pt">Net cash provided by operating activities</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="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="0" unitRef="usd">3,899,870</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="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="0" unitRef="usd">2,219,687</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left">Cash Flows from Investing Activities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 9pt">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">512,016</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="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="0" unitRef="usd">303,561</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-left: 9pt">Proceeds from sale of 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:ProceedsFromSaleOfOtherProductiveAssets" scale="0" unitRef="usd">2,500</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:ProceedsFromSaleOfOtherProductiveAssets" scale="0" unitRef="usd">2,000</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 9pt">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">15,902,014</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="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PaymentsToAcquireInvestments" scale="0" unitRef="usd">4,237,778</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-bottom: 1pt; padding-left: 9pt">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">7,645,623</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:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" scale="0" unitRef="usd">3,621,000</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt; padding-left: 76.5pt">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">8,765,907</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:NetCashProvidedByUsedInInvestingActivities" scale="0" sign="-" unitRef="usd">918,339</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="text-align: left; padding-bottom: 1pt; padding-left: 9pt">Dividends paid on common stock</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:PaymentsOfDividendsCommonStock" scale="0" unitRef="usd">489,268</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"><div style="-sec-ix-hidden: hidden-fact-4">&#8212;</div></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1pt; padding-left: 76.5pt">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">489,268</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"><div style="-sec-ix-hidden: hidden-fact-5">&#8212;</div></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">(Decrease) increase in cash and short term investments</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" sign="-" unitRef="usd">5,355,305</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="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" scale="0" unitRef="usd">1,301,348</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-bottom: 1pt">Cash and cash equivalents, beginning of the year</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:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="0" unitRef="usd">8,104,060</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="c12" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="0" unitRef="usd">6,802,712</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Cash and cash equivalents, end of the year</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:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="0" unitRef="usd">2,748,755</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="0" unitRef="usd">8,104,060</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Supplemental Schedule of Cash Flow Information:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-left: 9pt">Income taxes paid net of refunds</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:IncomeTaxesPaid" scale="0" unitRef="usd">1,159,595</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="0" format="ixt:num-dot-decimal" name="us-gaap:IncomeTaxesPaid" scale="0" unitRef="usd">14,365</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: 0; text-align: right">&#160;</p><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0">The accompanying notes are an integral part of the financial statements.</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 -->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: 0">Espey Mfg. &amp; Electronics Corp.</p><div>

</div><p style="border-bottom: Black 0.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt"><span style="text-decoration: none">Notes
to Financial Statements </span></p><div>

</div><ix:nonNumeric contextRef="c0" escape="true" name="us-gaap:NatureOfOperations"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt 0.75in; text-align: justify; text-indent: -0.75in">Note 1. Nature
of Operations</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 12pt; text-align: justify">Espey Mfg. &amp; Electronics Corp. (the Company)
is a manufacturer of electronic equipment used primarily in military and industrial applications. The principal markets for the Company's
products are companies that provide electronic support to both military and industrial applications across the United States and at some
international locations.</p></ix:nonNumeric><div>

</div><ix:nonNumeric contextRef="c0" continuedAt="_SignificantAccountingPoliciesTextBlock-c0_cont_1" escape="true" name="us-gaap:SignificantAccountingPoliciesTextBlock"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt">Note 2. Summary of Significant Accounting Policies</p>

<ix:nonNumeric contextRef="c0" continuedAt="_RevenueRecognitionPolicyTextBlock-c0_cont_1" escape="true" name="us-gaap:RevenueRecognitionPolicyTextBlock"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Revenue</p></ix:nonNumeric>

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

<ix:continuation continuedAt="_RevenueRecognitionPolicyTextBlock-c0_cont_2" id="_RevenueRecognitionPolicyTextBlock-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">The majority of our sales are generated from military
contracts from defense companies, the 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></ix:continuation>

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

<ix:continuation continuedAt="_RevenueRecognitionPolicyTextBlock-c0_cont_3" id="_RevenueRecognitionPolicyTextBlock-c0_cont_2"><p style="font: 10pt Times New Roman, Times, Serif; margin: 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></ix:continuation>

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

<ix:continuation continuedAt="_RevenueRecognitionPolicyTextBlock-c0_cont_4" id="_RevenueRecognitionPolicyTextBlock-c0_cont_3"><p style="font: 10pt Times New Roman, Times, Serif; margin: 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></ix:continuation>

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

<ix:continuation id="_RevenueRecognitionPolicyTextBlock-c0_cont_4"><p style="font: 10pt Times New Roman, Times, Serif; margin: 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></ix:continuation>

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

<ix:nonNumeric contextRef="c0" continuedAt="_InventoryPolicyTextBlock-c0_cont_1" escape="true" name="us-gaap:InventoryPolicyTextBlock"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Inventory</p></ix:nonNumeric>

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

<ix:continuation continuedAt="_InventoryPolicyTextBlock-c0_cont_2" id="_InventoryPolicyTextBlock-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 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 and reduce inventory balances based on this analysis.</p></ix:continuation>

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

<ix:continuation continuedAt="_InventoryPolicyTextBlock-c0_cont_3" id="_InventoryPolicyTextBlock-c0_cont_2"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Inventory relating to contracts in process and
work in process is valued at 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></ix:continuation>

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

</div><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 -->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: 0">Espey Mfg. &amp; Electronics Corp.</p><p style="border-bottom: Black 0.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt"><span style="text-decoration: none">Notes to Financial Statements </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Note 2. Summary of Significant Accounting Policies, <i>Continued</i></p></div><div>
    </div><!-- Field: /Page --><div>

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

</div><ix:continuation continuedAt="_SignificantAccountingPoliciesTextBlock-c0_cont_2" id="_SignificantAccountingPoliciesTextBlock-c0_cont_1"><ix:nonNumeric contextRef="c0" continuedAt="esp_ContractLiabilitiesPolicyTextBlock-c0_cont_1" escape="true" name="esp:ContractLiabilitiesPolicyTextBlock"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Contract Liabilities</p></ix:nonNumeric>

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

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

<ix:nonNumeric contextRef="c0" continuedAt="_DepreciationDepletionAndAmortizationPolicyTextBlock-c0_cont_1" escape="true" name="us-gaap:DepreciationDepletionAndAmortizationPolicyTextBlock"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Depreciation</p></ix:nonNumeric>

<ix:continuation continuedAt="_DepreciationDepletionAndAmortizationPolicyTextBlock-c0_cont_2" id="_DepreciationDepletionAndAmortizationPolicyTextBlock-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Depreciation of plant and equipment is computed
on a straight-line basis over the estimated useful lives of the assets.&#160;</p></ix:continuation>

<ix:continuation continuedAt="_DepreciationDepletionAndAmortizationPolicyTextBlock-c0_cont_3" id="_DepreciationDepletionAndAmortizationPolicyTextBlock-c0_cont_2"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"><ix:nonNumeric contextRef="c0" continuedAt="esp_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock-c0_cont_1" escape="true" name="esp:ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock">Estimated useful lives of depreciable assets
are as follows:</ix:nonNumeric></p></ix:continuation>

<ix:continuation id="esp_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock-c0_cont_1"><ix:continuation id="_DepreciationDepletionAndAmortizationPolicyTextBlock-c0_cont_3"><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 80%; border-collapse: collapse; margin-left: auto; margin-right: auto;">
  <tr style="vertical-align: top; background-color: rgb(204,238,255)">
    <td style="width: 50%; padding-bottom: 6pt">Buildings and improvements</td>
    <td style="width: 50%; padding-bottom: 6pt; text-align: center"><ix:nonNumeric contextRef="c33" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife">10</ix:nonNumeric> &#8211; <ix:nonNumeric contextRef="c34" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife">50</ix:nonNumeric> years</td></tr>
  <tr style="vertical-align: top; ">
    <td style="padding-bottom: 6pt">Machinery and equipment</td>
    <td style="padding-bottom: 6pt; text-align: center"><ix:nonNumeric contextRef="c35" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife">3</ix:nonNumeric> &#8211; <ix:nonNumeric contextRef="c36" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife">20</ix:nonNumeric> years</td></tr>
  <tr style="vertical-align: top; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 6pt">Furniture and fixtures</td>
    <td style="padding-bottom: 6pt; text-align: center"><ix:nonNumeric contextRef="c37" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife">7</ix:nonNumeric> &#8211; <ix:nonNumeric contextRef="c38" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife">10</ix:nonNumeric> years</td></tr>
  </table></ix:continuation></ix:continuation>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: center">&#160;</p>

<ix:nonNumeric contextRef="c0" continuedAt="_IncomeTaxPolicyTextBlock-c0_cont_1" escape="true" name="us-gaap:IncomeTaxPolicyTextBlock"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Income Taxes</p></ix:nonNumeric>

<ix:continuation continuedAt="_IncomeTaxPolicyTextBlock-c0_cont_2" id="_IncomeTaxPolicyTextBlock-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The Company follows the provisions of Accounting
Standards Codification (&#8220;ASC&#8221;) Topic 740-10, "Accounting for Income Taxes."</p></ix:continuation>

<ix:continuation id="_IncomeTaxPolicyTextBlock-c0_cont_2"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Under the provisions of ASC 740-10, deferred
tax assets and liabilities are recognized for the future tax consequences attributable to differences between the financial statement
carrying amounts of existing assets and liabilities and their respective tax bases.&#160; Deferred tax assets and liabilities are measured
using enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to be recovered
or settled.&#160; The effect on deferred taxes and liabilities of a change in tax rates is recognized in earnings in the period that includes
the enactment date.</p></ix:continuation>

<ix:nonNumeric contextRef="c0" continuedAt="_CashAndCashEquivalentsPolicyTextBlock-c0_cont_1" escape="true" name="us-gaap:CashAndCashEquivalentsPolicyTextBlock"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Cash and Cash Equivalents</p></ix:nonNumeric>

<ix:continuation id="_CashAndCashEquivalentsPolicyTextBlock-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Cash and cash equivalents consist of cash
and money market funds. The Company considers all highly liquid investments with original maturities
of three months or less to be cash equivalents.&#160;</p></ix:continuation>

<ix:nonNumeric contextRef="c0" continuedAt="_InvestmentPolicyTextBlock-c0_cont_1" escape="true" name="us-gaap:InvestmentPolicyTextBlock"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Investment Securities</p></ix:nonNumeric>

<ix:continuation continuedAt="_InvestmentPolicyTextBlock-c0_cont_2" id="_InvestmentPolicyTextBlock-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The Company accounts for its investments in
debt securities in accordance with ASC 320-10-25, &#8220;Accounting for Certain Investments in Debt and Equity Securities.&#8221;&#160;
Investments in debt securities at June 30, 2023 consists of municipal bonds, and treasury bills, and at June 30, 2022, consisted of municipal
bonds.&#160; The Company classifies investments in debt securities as available-for-sale. Unrealized holding gains and losses, net of
related tax effect, on available-for-sale debt securities are excluded from earnings and are reported as a separate component of stockholders&#8217;
equity until realized.&#160; Realized gains and losses for debt securities classified as available-for-sale are included in earnings and
are determined using the specific identification method.&#160; Interest income is recognized when earned.&#160; Fair values are based
on quoted market prices available as of the balance sheet date, and are therefore considered a Level 1 valuation.</p></ix:continuation>

<ix:continuation id="_InvestmentPolicyTextBlock-c0_cont_2"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Certificates of deposit held for investment
with an original maturity greater than three months are carried at amortized cost and reported as short-term investments on the balance
sheets. The type of certificates of deposit that the Company invests in are not considered debt securities under Financial Accounting
Standards Board ("FASB") Accounting Standards Codification (&#8220;ASC&#8221;) 320, Investments - Debt Securities. </p></ix:continuation>

<ix:nonNumeric contextRef="c0" continuedAt="_FairValueOfFinancialInstrumentsPolicy-c0_cont_1" escape="true" name="us-gaap:FairValueOfFinancialInstrumentsPolicy"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Fair Value of Financial Instruments</p></ix:nonNumeric>

<ix:continuation continuedAt="_FairValueOfFinancialInstrumentsPolicy-c0_cont_2" id="_FairValueOfFinancialInstrumentsPolicy-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">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.&#160; The standard describes three levels of inputs that may be used to measure fair value:</p></ix:continuation></ix:continuation><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 -->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: 0">Espey Mfg. &amp; Electronics Corp.</p><p style="border-bottom: Black 0.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt"><span style="text-decoration: none">Notes to Financial Statements </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Note 2. Summary of Significant Accounting Policies, <i>Continued</i></p></div><div>
    </div><!-- Field: /Page --><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"></p><div>
</div><ix:continuation continuedAt="_SignificantAccountingPoliciesTextBlock-c0_cont_3" id="_SignificantAccountingPoliciesTextBlock-c0_cont_2"><ix:continuation continuedAt="_FairValueOfFinancialInstrumentsPolicy-c0_cont_3" id="_FairValueOfFinancialInstrumentsPolicy-c0_cont_2"><table border="0" cellpadding="0" cellspacing="0" style="width: 100%; margin-bottom: 6pt; font: 10pt Times New Roman, Times, Serif">
<tr style="vertical-align: top">
  <td style="text-align: justify; width: 0.5in"><span>&#9726;</span></td>
  <td style="text-align: justify">Level 1: Quoted prices (unadjusted) for identical assets or liabilities in active markets that the entity has the ability to access as
of the measurement date.</td></tr>
</table></ix:continuation>


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




<ix:continuation continuedAt="_FairValueOfFinancialInstrumentsPolicy-c0_cont_5" id="_FairValueOfFinancialInstrumentsPolicy-c0_cont_4"><table border="0" cellpadding="0" cellspacing="0" style="width: 100%; margin-bottom: 6pt; font: 10pt Times New Roman, Times, Serif">
<tr style="vertical-align: top">
  <td style="text-align: justify; width: 0.5in"><span>&#9726;</span>&#160;</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></ix:continuation>


<ix:continuation id="_FairValueOfFinancialInstrumentsPolicy-c0_cont_5"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The carrying amounts of financial instruments,
including cash and cash equivalents, short term investment securities, accounts receivable, accounts payable and accrued expenses, approximated
fair value as of June 30, 2023 and 2022 because of the immediate or short-term maturity of these financial instruments.&#160;</p></ix:continuation>

<ix:nonNumeric contextRef="c0" continuedAt="_TradeAndOtherAccountsReceivablePolicy-c0_cont_1" escape="true" name="us-gaap:TradeAndOtherAccountsReceivablePolicy"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Accounts Receivable and Allowance for Doubtful
Accounts</p></ix:nonNumeric>

<ix:continuation id="_TradeAndOtherAccountsReceivablePolicy-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; 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 doubtful accounts.&#160; The Company estimates the allowance based on its analysis of specific balances. Interest is not charged on
past due balances.&#160; Based on these factors, there was an allowance for doubtful accounts of $<ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" unitRef="usd"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" unitRef="usd">3,000</ix:nonFraction></ix:nonFraction> at June 30, 2023 and 2022.&#160;
Changes to the allowance for doubtful accounts are charged to expense and reduced by charge-offs, net of recoveries.</p></ix:continuation>

<ix:nonNumeric contextRef="c0" continuedAt="_EarningsPerSharePolicyTextBlock-c0_cont_1" escape="true" name="us-gaap:EarningsPerSharePolicyTextBlock"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Per Share Amounts</p></ix:nonNumeric>

<ix:continuation id="_EarningsPerSharePolicyTextBlock-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">ASC 260-10 &#8220;Earnings Per Share
(EPS)&#8221; requires the Company to calculate net income per share based on basic and diluted net income per share, as defined.
Basic EPS excludes dilution and is computed by dividing net income by the weighted average number of shares outstanding for the
period. Diluted EPS reflects the potential dilution that could occur if securities or other contracts to issue common stock
were exercised or converted into common stock. The dilutive effect of outstanding options issued by the Company are reflected
in diluted EPS using the treasury stock method. Under the treasury stock method, options will only have a dilutive effect when
the average market price of common stock during the period exceeds the exercise price of the options.</p></ix:continuation>

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

<ix:nonNumeric contextRef="c0" continuedAt="_ComprehensiveIncomePolicyPolicyTextBlock-c0_cont_1" escape="true" name="us-gaap:ComprehensiveIncomePolicyPolicyTextBlock"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Comprehensive Income</p></ix:nonNumeric>

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

<ix:continuation id="_ComprehensiveIncomePolicyPolicyTextBlock-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Comprehensive income consists of net income and other
comprehensive income (loss).&#160; Other comprehensive income for fiscal years ended June 30, 2023 and 2022 consists of unrealized holding
gains (losses) on available-for-sale debt securities.&#160;</p></ix:continuation>

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

<ix:nonNumeric contextRef="c0" continuedAt="_UseOfEstimates-c0_cont_1" escape="true" name="us-gaap:UseOfEstimates"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Use of Estimates</p></ix:nonNumeric>

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

<ix:continuation id="_UseOfEstimates-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">The preparation of financial statements in conformity
with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that
affect the reported amount of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial
statements and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from those estimates.</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">&#160;</p></ix:continuation></ix:continuation><div>

</div><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 -->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: 0">Espey Mfg. &amp; Electronics Corp.</p><p style="border-bottom: Black 0.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt"><span style="text-decoration: none">Notes to Financial Statements </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Note 2. Summary of Significant Accounting Policies, <i>Continued</i></p></div><div>
    </div><!-- Field: /Page --><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"></p><div>
</div><ix:continuation id="_SignificantAccountingPoliciesTextBlock-c0_cont_3"><ix:nonNumeric contextRef="c0" continuedAt="esp_RecentlyIssuedAccountingStandardsPolicyTextBlock-c0_cont_1" escape="true" name="esp:RecentlyIssuedAccountingStandardsPolicyTextBlock"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Recently Adopted Accounting Standards</p></ix:nonNumeric>

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

<ix:continuation id="esp_RecentlyIssuedAccountingStandardsPolicyTextBlock-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">In December 2019, the FASB issued ASU 2019-12, &#8220;Income
Taxes (Topic 740): Simplifying the Accounting for Income Taxes.&#8221; ASU 2019-12 amends ASC 740 to simplify the accounting for income
taxes by removing certain exceptions for investments, intraperiod allocations and interim calculations, and adding guidance to reduce
complexity in the accounting standard under the FASB&#8217;s simplification initiative. ASU 2019-12 is effective for public entities for
fiscal years beginning after December 15, 2020. Upon adoption, the amendments in ASU 2019-12 should be applied on a prospective basis
to all periods presented. The Company adopted the new guidance under ASU 2019-12 in the first quarter of fiscal year 2022 and removed
the exception for intraperiod allocations from its interim period tax provision calculation, accordingly. The removal of the exception
for intraperiod allocations did not have a material impact on the Company.</p></ix:continuation>

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



<ix:nonNumeric contextRef="c0" continuedAt="_NewAccountingPronouncementsPolicyPolicyTextBlock-c0_cont_1" escape="true" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Recent Accounting Pronouncements Not Yet Adopted</p></ix:nonNumeric>

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

<ix:continuation id="_NewAccountingPronouncementsPolicyPolicyTextBlock-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">In June 2016, the FASB issued ASU 2016-13, &#8220;Financial
Instruments-Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments&#8221;, <span>which
requires a financial asset measured at amortized cost basis to be presented at the net amount expected to be collected, with further clarifications
made more recently. For trade receivables, loans and other financial instruments, the Company will be required to use a forward-looking
expected loss model rather than the incurred loss model for recognizing credit losses which reflects losses that are probable. Credit
losses relating to available-for-sale debt securities are required to be recorded through an allowance for credit losses rather than as
a reduction in the amortized cost basis of the securities. </span>ASU 2016-13 is effective for public entities for fiscal years beginning
after December 15, 2022, including interim periods within those fiscal years. Upon adoption, the amendments in ASU 2016-13 should be applied
on a prospective basis to all periods presented relating to available-for-sale debt securities. For all other financial instruments the
Company upon adoption will apply the amendments on a modified-retrospective approach. The Company is expected to adopt the new guidance
under ASU 2016-13 in the first quarter of fiscal year 2024 and is currently evaluating the impact of the adoption on its financial statements.
The adoption of this standard is not expected to have a material impact on the Company&#8217;s financial statements.</p></ix:continuation>

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

<ix:nonNumeric contextRef="c0" continuedAt="_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock-c0_cont_1" escape="true" name="us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Impairment of Long-Lived Assets</p></ix:nonNumeric>

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

<ix:continuation id="_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Long-lived assets, including property, plant, and
equipment, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not
be recoverable.&#160; Recoverability of assets to be held and used is measured by a comparison of the carrying amount of an asset to estimated
undiscounted future cash flows expected to be generated by the asset.&#160; If the carrying amount of an asset exceeds its estimated future
cash flows, an impairment charge is recognized by the amount by which the carrying amount of the asset exceeds the fair value of the asset.&#160;
There were no impairments of long-lived assets in fiscal years 2023 and 2022.&#160; Assets to be disposed of are separately presented
in the balance sheet and reported at the lower of the carrying amount or fair value less costs to sell, and no longer depreciated.&#160;
The assets and liabilities of a disposed group classified as held for sale are presented separately in the appropriate asset and liability
sections of the balance sheet, if applicable.</p></ix:continuation>

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

<ix:nonNumeric contextRef="c0" continuedAt="_ConcentrationRiskCreditRisk-c0_cont_1" escape="true" name="us-gaap:ConcentrationRiskCreditRisk"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Concentrations of Risk</p></ix:nonNumeric>

<ix:continuation continuedAt="_ConcentrationRiskCreditRisk-c0_cont_2" id="_ConcentrationRiskCreditRisk-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The market for our defense electronics products
is largely dependent on the availability of new contracts from the United States and foreign governments to prime contractors to which
we provide components.&#160; Any decline in expenditures by the United States or foreign governments may have an adverse effect on our
financial performance.&#160;</p></ix:continuation>

<ix:continuation continuedAt="_ConcentrationRiskCreditRisk-c0_cont_3" id="_ConcentrationRiskCreditRisk-c0_cont_2"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Generally, U.S. Government contracts are subject
to procurement laws and regulations.&#160; Some of the Company&#8217;s contracts are governed by the Federal Acquisition Regulation (FAR),
which lays out uniform policies and procedures for acquiring goods and services by the U.S. Government, and agency-specific acquisition
regulations that implement or supplement the FAR.&#160; For example, the Department of Defense implements the FAR through the Defense
Federal Acquisition Regulation (DFAR).</p></ix:continuation>

<ix:continuation id="_ConcentrationRiskCreditRisk-c0_cont_3"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The FAR also contains guidelines and regulations
for managing a contract after award, including conditions under which contracts may be terminated, in whole or in part, at the government&#8217;s
convenience or for default.&#160; If a contract is terminated for the convenience of the government, a contractor is entitled to receive
payments for its allowable costs and, in general, the proportionate share of fees or earnings for the work done.&#160; If a contract is
terminated for default, the government generally pays for only the work it has accepted.&#160; These regulations also subject the Company
to financial audits and other reviews by the government of its costs, performance, accounting and general business practices relating
to its contracts, which may result in adjustment of the Company&#8217;s contract-related costs and fees.</p></ix:continuation></ix:continuation><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 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 -->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: 0">Espey Mfg. &amp; Electronics Corp.</p><p style="border-bottom: Black 0.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt"><span style="text-decoration: none">Notes to Financial Statements </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"></p></div><div>
    </div><!-- Field: /Page --><div>

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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 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: 0; text-align: justify; color: #1F497D">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Total revenue recognized for the twelve months ended
June 30, 2023 based on units delivered totaled $<ix:nonFraction contextRef="c39" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd">27,770,365</ix:nonFraction> compared to $<ix:nonFraction contextRef="c40" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd">26,931,949</ix:nonFraction> for the same periods in fiscal year 2022.&#160; Total
revenue recognized for the twelve months ended June 30, 2023 based on milestones achieved totaled $<ix:nonFraction contextRef="c41" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd">7,821,958</ix:nonFraction> compared to $<ix:nonFraction contextRef="c42" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd">5,172,825</ix:nonFraction> for
the same periods in fiscal year 2022.</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 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 result in the adjustment of the transaction price
as of June 30, 2023.&#160; Our payment terms are generally 30-60 days.&#160;</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Contract liabilities were $<ix:nonFraction contextRef="c43" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ContractWithCustomerLiability" scale="0" unitRef="usd">8,081,838</ix:nonFraction> and $<ix:nonFraction contextRef="c44" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ContractWithCustomerLiability" scale="0" unitRef="usd">3,384,474</ix:nonFraction>
as of June 30, 2023 and 2022, respectively. &#160;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, approximated $<ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ContractWithCustomerLiability" scale="0" unitRef="usd">2,018,642</ix:nonFraction> for the twelve months ended June 30, 2023. 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: 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">The Company&#8217;s backlog at June 30, 2023 totaling
approximately $<ix:nonFraction contextRef="c45" decimals="-5" format="ixt:num-dot-decimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="6" unitRef="usd">83.6</ix:nonFraction> million is expected, based on expected due dates, to be recognized in the following fiscal years: <ix:nonFraction contextRef="c45" decimals="2" format="ixt:num-dot-decimal" name="esp:BacklogPercentageOfRecognitionsYearOne" scale="-2" unitRef="pure">47</ix:nonFraction>% in 2024; <ix:nonFraction contextRef="c45" decimals="2" format="ixt:num-dot-decimal" name="esp:BacklogPercentageOfRecognitionsYearTwo" scale="-2" unitRef="pure">38</ix:nonFraction>%
in 2025, <ix:nonFraction contextRef="c45" decimals="2" format="ixt:num-dot-decimal" name="esp:BacklogPercentageOfRecognitionsYearThree" scale="-2" unitRef="pure">11</ix:nonFraction>% in 2026 and <ix:nonFraction contextRef="c45" decimals="2" format="ixt:num-dot-decimal" name="esp:BacklogPercentageOfRecognitions" scale="-2" unitRef="pure">4</ix:nonFraction>% thereafter. &#160;&#160;</p></ix:nonNumeric><div>

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

</div><ix:nonNumeric contextRef="c0" continuedAt="_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock-c0_cont_1" escape="true" name="us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Note 4. Investment Securities</p>

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

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

<ix:continuation continuedAt="_DebtSecuritiesAvailableForSaleTableTextBlock-c0_cont_2" id="_DebtSecuritiesAvailableForSaleTableTextBlock-c0_cont_1"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <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="font: 10pt Times New Roman, Times, Serif; white-space: nowrap; text-decoration: underline">June 30, 2023</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="c46" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" scale="0" unitRef="usd">11,280,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-6">&#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-7">&#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="c46" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" scale="0" unitRef="usd">11,280,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">$</td><td style="text-align: right"><ix:nonFraction contextRef="c47" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" scale="0" unitRef="usd">260,475</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="c47" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" scale="0" unitRef="usd">165</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="c47" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" scale="0" unitRef="usd">7,843</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="c47" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" scale="0" unitRef="usd">252,797</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">$</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c48" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" scale="0" unitRef="usd">430,952</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="c48" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" scale="0" unitRef="usd">1,225</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="c48" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" scale="0" unitRef="usd">301</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">$</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c48" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" scale="0" unitRef="usd">431,876</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:AvailableForSaleDebtSecuritiesAmortizedCostBasis" scale="0" unitRef="usd">11,971,427</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">1,390</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">8,144</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:AvailableForSaleSecuritiesDebtSecurities" scale="0" unitRef="usd">11,964,673</ix:nonFraction></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: 0 0 6pt; text-indent: 0.25in"><span style="text-underline-style: double">&#160;</span></p></ix:continuation></ix:nonNumeric><div>

</div><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 -->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: 0">Espey Mfg. &amp; Electronics Corp.</p><p style="border-bottom: Black 0.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt"><span style="text-decoration: none">Notes to Financial Statements </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Note 4. Investment Securities, <i>Continued</i></p></div><div>
    </div><!-- Field: /Page --><div>

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

</div><ix:continuation id="_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock-c0_cont_1"><ix:continuation id="_DebtSecuritiesAvailableForSaleTableTextBlock-c0_cont_2"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <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="font: 10pt Times New Roman, Times, Serif; text-decoration: underline; white-space: nowrap">June 30, 2022</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="c49" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" scale="0" unitRef="usd">3,639,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-8">&#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-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"><ix:nonFraction contextRef="c49" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" scale="0" unitRef="usd">3,639,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; padding-bottom: 1pt">Municipal bonds</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="c50" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" scale="0" unitRef="usd">72,225</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"><div style="-sec-ix-hidden: hidden-fact-10">&#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">$</td><td style="border-bottom: Black 1pt solid; text-align: right">(<ix:nonFraction contextRef="c50" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" scale="0" unitRef="usd">2,446</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">$</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c50" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" scale="0" unitRef="usd">69,779</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" scale="0" unitRef="usd">3,711,225</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"><div style="-sec-ix-hidden: hidden-fact-11">&#8212;</div></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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" scale="0" unitRef="usd">2,446</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" scale="0" unitRef="usd">3,708,779</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table></ix:continuation>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The portfolio is diversified and highly liquid
and primarily consists of investment grade fixed income instruments. At June 30, 2023, 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: 0 0 6pt; text-align: justify"><ix:nonNumeric contextRef="c0" continuedAt="_InvestmentsClassifiedByContractualMaturityDateTableTextBlock-c0_cont_1" escape="true" name="us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock">As of June 30, 2023 and June 30, 2022, the remaining
contractual maturities of available-for-sale debt securities were as follows:</ix:nonNumeric></p>

<ix:continuation id="_InvestmentsClassifiedByContractualMaturityDateTableTextBlock-c0_cont_1"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">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: center">&#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="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">One Year</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">Five Years</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">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">June 30, 2023</td><td>&#160;</td>
    <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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" scale="0" unitRef="usd">11,711,876</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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue" scale="0" unitRef="usd">252,797</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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="0" unitRef="usd">11,964,673</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, 2022</td><td>&#160;</td>
    <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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" scale="0" unitRef="usd">3,639,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">$</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:AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue" scale="0" unitRef="usd">69,779</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="0" unitRef="usd">3,708,779</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  </table></ix:continuation></ix:continuation><div>

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

</div><ix:nonNumeric contextRef="c0" escape="true" name="us-gaap:LongTermContractsOrProgramsDisclosureTextBlock"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Note 5. Contracts in Process</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 0 0.75in; text-align: justify; text-indent: -0.75in"><ix:nonNumeric contextRef="c0" continuedAt="esp_ScheduleOfContractsInProcessTableTextBlock-c0_cont_1" escape="true" name="esp:ScheduleOfContractsInProcessTableTextBlock">Contracts in process
at June 30, 2023 and 2022 are as follows:</ix:nonNumeric></p>

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

<ix:continuation id="esp_ScheduleOfContractsInProcessTableTextBlock-c0_cont_1"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <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">2023</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">2022</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%; text-align: left">Unrecognized gross contract value</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="c3" decimals="0" format="ixt:num-dot-decimal" name="esp:UnrecognizedGrossContractValue" scale="0" unitRef="usd">83,577,153</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="c4" decimals="0" format="ixt:num-dot-decimal" name="esp:UnrecognizedGrossContractValue" scale="0" unitRef="usd">76,782,028</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">Costs related to contracts in process</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:InventoryForLongTermContractsOrPrograms" scale="0" unitRef="usd">17,318,579</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:InventoryForLongTermContractsOrPrograms" scale="0" unitRef="usd">16,207,419</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: 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 12pt; text-align: justify">Included in costs relating to contracts in
process at June 30, 2023 and 2022 are costs relative to contracts that may not be completed within the ensuing year as contracts vary
in size, scope and duration. Under the units-of-delivery method, the related sale and cost of sales will not be reflected in the statements
of comprehensive income until the units under contract are shipped.</p></ix:nonNumeric><div>

</div><ix:nonNumeric contextRef="c0" continuedAt="_PropertyPlantAndEquipmentDisclosureTextBlock-c0_cont_1" escape="true" name="us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Note 6. Property, Plant and Equipment</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"><ix:nonNumeric contextRef="c0" continuedAt="_PropertyPlantAndEquipmentTextBlock-c0_cont_1" escape="true" name="us-gaap:PropertyPlantAndEquipmentTextBlock">Property, plant and equipment at June 30, 2023
and 2022 is as follows:</ix:nonNumeric></p>

<ix:continuation id="_PropertyPlantAndEquipmentTextBlock-c0_cont_1"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 90%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <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">2023</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">2022</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%">Land</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="c55" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" unitRef="usd">45,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: 10%; text-align: right"><ix:nonFraction contextRef="c56" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" unitRef="usd">45,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">Building and improvements</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:PropertyPlantAndEquipmentGross" scale="0" unitRef="usd">4,811,179</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="c53" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" unitRef="usd">4,450,399</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">Machinery and equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c57" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" unitRef="usd">11,402,679</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="c58" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" unitRef="usd">11,287,648</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">Furniture and fixtures</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:PropertyPlantAndEquipmentGross" scale="0" unitRef="usd">164,200</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="c60" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" unitRef="usd">164,200</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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" unitRef="usd">16,423,058</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" unitRef="usd">15,947,247</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">Accumulated depreciation</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:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" scale="0" unitRef="usd">13,597,969</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" scale="0" unitRef="usd">13,149,254</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="text-align: left; padding-bottom: 2.5pt">Property, plant and equipment, net</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:PropertyPlantAndEquipmentNet" scale="0" unitRef="usd">2,825,089</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" unitRef="usd">2,797,993</ix:nonFraction></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: 0; text-align: justify">&#160;</p></ix:continuation></ix:nonNumeric><div>

</div><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 -->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: 0">Espey Mfg. &amp; Electronics Corp.</p><p style="border-bottom: Black 0.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt"><span style="text-decoration: none">Notes to Financial Statements </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Note 6. Property, Plant and Equipment, <i>Continued</i></p></div><div>
    </div><!-- Field: /Page --><div>

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

</div><ix:continuation id="_PropertyPlantAndEquipmentDisclosureTextBlock-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Depreciation expense was $<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Depreciation" scale="0" unitRef="usd">484,920</ix:nonFraction> and $<ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Depreciation" scale="0" unitRef="usd">494,635</ix:nonFraction>
for the years ended June 30, 2023 and 2022, respectively.</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">The Company was awarded $<ix:nonFraction contextRef="c51" decimals="-5" format="ixt:num-dot-decimal" name="us-gaap:EquipmentExpense" scale="6" unitRef="usd">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 will be conducted on Espey&#8217;s property in Saratoga Springs, NY, with completion slated for
2024. 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 expects to have an initial cash outlay to satisfy
income tax obligations arising from the value of the award. Included in building and improvements at June 30, 2023 and 2022 was
$<ix:nonFraction contextRef="c52" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" unitRef="usd">308,001</ix:nonFraction> and $<ix:nonFraction contextRef="c53" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" unitRef="usd">58,296</ix:nonFraction> respectively, for facility and capital upgrades under the funding award. As of September 19, 2023, the first milestone totaling approximately $<ix:nonFraction contextRef="c54" decimals="0" format="ixt:num-dot-decimal" name="esp:RevenueRecognitionMilestoneMethodRevenuesRecognized" scale="0" unitRef="usd">969,000</ix:nonFraction> was achieved and reimbursed. The Company expects to record
the receipt of milestones payments received as a reduction from the cost of the assets.</p></ix:continuation><div>

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

</div><ix:nonNumeric contextRef="c0" escape="true" name="esp:PensionExpenseTextBlock"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Note 7. Pension Expense</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Under terms of a negotiated union contract
which expires on June 30, 2025, the Company is obligated to make contributions to a union-sponsored International Brotherhood of
Electrical Workers Local 1799 defined benefit pension plan (Plan identifying number is 14-6065199) covering eligible employees. Such
contributions and expenses are based upon hours worked at a specified rate and amounted to $<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PensionAndOtherPostretirementBenefitExpense" scale="0" unitRef="usd">102,612</ix:nonFraction> in fiscal year 2023 and $<ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:PensionAndOtherPostretirementBenefitExpense" scale="0" unitRef="usd">110,378</ix:nonFraction>
in fiscal year 2022. These contributions represent more than five percent of the total contributions made into the Plan. For the
years beginning January 1, 2023 and 2022, the Plan was in the &#8220;green zone&#8221; which means it is neither endangered nor
critical status. In addition, the Company is obligated to make contributions to the National Electrical Benefit Fund (NEBF) (Plan
identifying number is 53-0181657). The Plan is a defined pension benefit plan covering eligible union employees. Such
contributions and expenses amounted to $<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:MultiemployerPlanPensionSignificantPlanContribution" scale="0" unitRef="usd">72,350</ix:nonFraction> in fiscal year 2023 and $<ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:MultiemployerPlanPensionSignificantPlanContribution" scale="0" unitRef="usd">73,771</ix:nonFraction> in
fiscal year 2022. The contribution did not and will not in the future have a material impact on the Company&#8217;s financial
statements.</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">The Company sponsors a 401(k) plan for non-union
workers with employee and employer matching contributions. The employer match is <ix:nonFraction contextRef="c0" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent" scale="-2" unitRef="pure"><ix:nonFraction contextRef="c5" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent" scale="-2" unitRef="pure">10</ix:nonFraction></ix:nonFraction>% of the employee contribution and was $<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="esp:DefinedContributionPlanEmployersMatchingContribution" scale="0" unitRef="usd">53,768</ix:nonFraction> and
$<ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="esp:DefinedContributionPlanEmployersMatchingContribution" scale="0" unitRef="usd">53,836</ix:nonFraction>, for fiscal years 2023 and 2022, respectively.</p></ix:nonNumeric><div>

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

</div><ix:nonNumeric contextRef="c0" continuedAt="_IncomeTaxDisclosureTextBlock-c0_cont_1" escape="true" name="us-gaap:IncomeTaxDisclosureTextBlock"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Note 8. Provision for Income Taxes</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><ix:nonNumeric contextRef="c0" continuedAt="_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock-c0_cont_1" escape="true" name="us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock">A summary of the components of the provision for income
taxes for the years ended June 30, 2023 and 2022 is as follows:</ix:nonNumeric></p>

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

<ix:continuation id="_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock-c0_cont_1"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <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">2023</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">2022</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%; text-align: left">Current tax expense - federal</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:CurrentFederalTaxExpenseBenefit" scale="0" unitRef="usd">1,059,743</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:CurrentFederalTaxExpenseBenefit" scale="0" unitRef="usd">313,705</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">Current tax expense - state</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:CurrentStateAndLocalTaxExpenseBenefit" scale="0" unitRef="usd">9,595</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:CurrentStateAndLocalTaxExpenseBenefit" scale="0" unitRef="usd">4,978</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">Deferred tax (benefit) expense</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="esp:DeferredIncomeTaxesExpenseBenefit" scale="0" sign="-" unitRef="usd">40,002</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="esp:DeferredIncomeTaxesExpenseBenefit" scale="0" unitRef="usd">9,271</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; padding-left: 0.5in">Provision for income taxes</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:IncomeTaxExpenseBenefit" scale="0" unitRef="usd">1,029,336</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:IncomeTaxExpenseBenefit" scale="0" unitRef="usd">327,954</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table></ix:continuation>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Deferred income taxes reflect the impact of
"temporary differences" between the amount of assets and liabilities for financial reporting purposes and such amounts measured
by tax laws and regulations. These "temporary differences" are determined in accordance with ASC 740-10.</p><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">&#160;</p></ix:nonNumeric><div>

</div><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 -->23<!-- 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: 0">Espey Mfg. &amp; Electronics Corp.</p><p style="border-bottom: Black 0.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt"><span style="text-decoration: none">Notes to Financial Statements </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Note 8. Provision for Income Taxes, <i>Continued</i></p></div><div>
    </div><!-- Field: /Page --><div>

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

</div><ix:continuation continuedAt="_IncomeTaxDisclosureTextBlock-c0_cont_2" id="_IncomeTaxDisclosureTextBlock-c0_cont_1"><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><ix:nonNumeric contextRef="c0" continuedAt="_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock-c0_cont_1" escape="true" name="us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock">The combined U.S. federal and state effective
income tax rates</ix:nonNumeric> of 21.9% and 20.6%, for 2023 and 2022 respectively, differed from the statutory U.S. federal income tax rate for the
following reasons:</p>

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

<ix:continuation id="_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock-c0_cont_1"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 90%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <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">2023</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">2022</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%; text-align: left">U.S. federal statutory income tax rate</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right"><ix:nonFraction contextRef="c0" decimals="3" format="ixt:num-dot-decimal" name="esp:USFederalStatutoryIncomeTaxRate" scale="-2" unitRef="pure">21.0</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; text-align: left">%</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right"><ix:nonFraction contextRef="c5" decimals="3" format="ixt:num-dot-decimal" name="esp:USFederalStatutoryIncomeTaxRate" scale="-2" unitRef="pure">21.0</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 0pt; text-align: left">Increase (reduction) in rate resulting from:</td><td>&#160;</td>
    <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">State franchise tax, net of federal income tax benefit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="3" format="ixt:num-dot-decimal" name="us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" scale="-2" unitRef="pure">0.2</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="3" format="ixt:num-dot-decimal" name="us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" scale="-2" unitRef="pure">0.3</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">ESOP cost versus Fair Market Value</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c0" decimals="3" format="ixt:num-dot-decimal" name="esp:EffectiveIncomeTaxRateReconciliationESOPFairValue" scale="-2" sign="-" unitRef="pure">0.2</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="c5" decimals="3" format="ixt:num-dot-decimal" name="esp:EffectiveIncomeTaxRateReconciliationESOPFairValue" scale="-2" sign="-" unitRef="pure">1.3</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">Dividend on allocated ESOP shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</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">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c5" decimals="3" format="ixt:num-dot-decimal" name="us-gaap:EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends" scale="-2" sign="-" unitRef="pure">3.1</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">Stock-based compensation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="3" format="ixt:num-dot-decimal" name="us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" scale="-2" unitRef="pure">1.0</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="3" format="ixt:num-dot-decimal" name="us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" scale="-2" unitRef="pure">4.0</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">Rate Differential on Net Operating Loss Carryback</td><td>&#160;</td>
    <td style="text-align: left">&#160;</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">&#160;</td><td style="text-align: right">(<ix:nonFraction contextRef="c5" decimals="3" format="ixt:num-dot-decimal" name="esp:EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback" scale="-2" sign="-" unitRef="pure">0.1</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">)</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="c0" decimals="3" format="ixt:num-dot-decimal" name="us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments" scale="-2" sign="-" unitRef="pure">0.1</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="3" format="ixt:num-dot-decimal" name="us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments" scale="-2" sign="-" unitRef="pure">0.2</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="text-align: left; padding-bottom: 2.5pt">Effective tax rate</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="3" format="ixt:num-dot-decimal" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" scale="-2" unitRef="pure">21.9</ix:nonFraction></td><td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 1.5pt; text-align: left">%</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="c5" decimals="3" format="ixt:num-dot-decimal" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" scale="-2" unitRef="pure">20.6</ix:nonFraction></td><td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 1.5pt; text-align: left">%</td></tr>
  </table></ix:continuation>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">For the years ended June 30, 2023 and 2022
deferred income tax (benefit) expense of ($40,002) and $9,271, respectively, results from the changes in temporary differences for
each year. The tax effects of temporary differences that give rise to <ix:nonNumeric contextRef="c0" continuedAt="_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock-c0_cont_1" escape="true" name="us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock">deferred tax assets and deferred tax liabilities as of June
30, 2023 and 2022 are presented as follows:</ix:nonNumeric></p>

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

<ix:continuation id="_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock-c0_cont_1"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 90%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <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">2023</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">2022</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">Deferred tax assets:</td><td>&#160;</td>
    <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; width: 74%; text-align: left">Accrued expenses</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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" scale="0" unitRef="usd">273,059</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" scale="0" unitRef="usd">204,774</ix:nonFraction></td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">ESOP</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:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther" scale="0" unitRef="usd">24,407</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther" scale="0" unitRef="usd">14,237</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; text-align: left">Stock-based compensation</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:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" scale="0" unitRef="usd">36,552</ix:nonFraction></td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" scale="0" unitRef="usd">33,719</ix:nonFraction></td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 40pt; text-align: left; padding-bottom: 1pt">Total deferred tax assets</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:DeferredTaxAssetsGross" scale="0" unitRef="usd">334,018</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredTaxAssetsGross" scale="0" unitRef="usd">252,730</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">&#160;</td><td>&#160;</td>
    <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">Deferred tax liability:</td><td>&#160;</td>
    <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">Property, plant and equipment - principally due to differences in depreciation methods</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:DeferredTaxLiabilitiesPropertyPlantAndEquipment" scale="0" unitRef="usd">337,501</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" scale="0" unitRef="usd">374,566</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">Inventory - effect of uniform capitalization</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:DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts" scale="0" unitRef="usd">99,215</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts" scale="0" unitRef="usd">19,276</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt; text-align: left; padding-bottom: 1pt">Prepaid expenses</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:DeferredTaxLiabilitiesPrepaidExpenses" scale="0" unitRef="usd">35,129</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:DeferredTaxLiabilitiesPrepaidExpenses" scale="0" unitRef="usd">36,716</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-bottom: 1pt; padding-left: 40pt; text-align: left">Total deferred tax liability</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:DeferredIncomeTaxLiabilities" scale="0" unitRef="usd">471,845</ix:nonFraction></td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</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:DeferredIncomeTaxLiabilities" scale="0" unitRef="usd">430,558</ix:nonFraction></td><td style="padding-bottom: 1pt; 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; padding-bottom: 2.5pt">Net deferred tax liability</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="esp:DeferredTaxAssetLiability" scale="0" sign="-" unitRef="usd">137,827</ix:nonFraction></td><td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 2pt; 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="c4" decimals="0" format="ixt:num-dot-decimal" name="esp:DeferredTaxAssetLiability" scale="0" sign="-" unitRef="usd">177,828</ix:nonFraction></td><td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 2pt; text-align: left">)</td></tr>
  </table></ix:continuation>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">In assessing the realization of deferred tax
assets, management considers whether it is more likely than not that some portion or all of the deferred tax assets will be realized.
The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income during the periods in which
those temporary differences become deductible. Management considers the scheduled reversal of deferred tax liabilities, projected future
taxable income, and tax planning strategies in making this assessment. Based upon the level of historical taxable income and projection
for future taxable income over the period in which the deferred tax assets are deductible, management believes it is more likely than
not that the Company will realize the benefits of these temporary differences without consideration of a valuation allowance.</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">As the result of the implementation of the FASB
interpretation No. 48 (&#8220;FIN 48&#8221;), Accounting for Uncertainty in Income Taxes &#8211; An Interpretation of FASB Statement No.
109, the Company recognized no material adjustments to unrecognized tax benefits. As of June 30, 2023 and 2022, the Company has no unrecognized
tax benefits.</p><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">&#160;</p></ix:continuation><div>

</div><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 -->24<!-- 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: 0">Espey Mfg. &amp; Electronics Corp.</p><p style="border-bottom: Black 0.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt"><span style="text-decoration: none">Notes to Financial Statements </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Note 8. Provision for Income Taxes, <i>Continued</i></p></div><div>
    </div><!-- Field: /Page --><div>

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

</div><ix:continuation id="_IncomeTaxDisclosureTextBlock-c0_cont_2"><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">The Company recognizes interest and penalties
in general and administrative expense. As of June 30, 2023 and 2022, the Company has not recorded any provision for accrued interest and
penalties.</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">The Company is subject to taxation in the United
States and various state jurisdictions. The federal tax returns are subject to audit for three years from date of filing unless the return
was audited within that period. In general the majority of state statutes follow similar guidelines. As such, the Company&#8217;s tax
returns for tax years ending June 30, 2023, 2022, and 2021 remain open to examination by the respective taxing authorities.</p></ix:continuation><div>

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

</div><ix:nonNumeric contextRef="c0" escape="true" name="esp:SignificantCustomersTextBlock"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0pt">Note 9. Significant
Customers</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">A significant portion of the
Company's business is the production of military and industrial electronic equipment for use by the U.S. and foreign governments and
certain industrial customers. Sales to five domestic customers accounted for <ix:nonFraction contextRef="c61" decimals="INF" format="ixt:num-dot-decimal" name="esp:ConcentrationRiskPercentageOne" scale="-2" unitRef="pure">81</ix:nonFraction>% of total sales in 2023. Sales to four domestic
customers accounted for <ix:nonFraction contextRef="c62" decimals="INF" format="ixt:num-dot-decimal" name="esp:ConcentrationRiskPercentageOne" scale="-2" unitRef="pure">57</ix:nonFraction>% of total sales in 2022. The related accounts receivable balance, as a percentage of the Company's total
trade accounts receivable balance, was <ix:nonFraction contextRef="c63" decimals="INF" format="ixt:num-dot-decimal" name="esp:ConcentrationRiskPercentageOne" scale="-2" unitRef="pure">81</ix:nonFraction>% represented by five customers at June 30, 2023 and <ix:nonFraction contextRef="c64" decimals="INF" format="ixt:num-dot-decimal" name="esp:ConcentrationRiskPercentageOne" scale="-2" unitRef="pure">74</ix:nonFraction>% represented by four customers at
June 30, 2022.</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Export sales in fiscal years
2023 and 2022 were approximately $<ix:nonFraction contextRef="c65" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:SalesTypeLeaseRevenue" scale="0" unitRef="usd">549,510</ix:nonFraction> and $<ix:nonFraction contextRef="c66" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:SalesTypeLeaseRevenue" scale="0" unitRef="usd">1,644,000</ix:nonFraction>, respectively.</p></ix:nonNumeric><div>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"><ix:nonNumeric contextRef="c0" name="us-gaap:EmployeeStockOwnershipPlanESOPPlanDescription">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.</ix:nonNumeric> 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 statement of financial position. 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. The ESOP borrowed from the Corporation an amount equal to the purchase
price.&#160; The loan will be repaid in fifteen (15) equal annual installments of principal commencing June 2021.&#160; The Board of
Directors has fixed the interest rate and the unpaid balance will bear interest at a fixed rate of <ix:nonFraction contextRef="c67" decimals="4" format="ixt:num-dot-decimal" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" unitRef="pure">3.00</ix:nonFraction>% per annum. ESOP compensation
expense was $<ix:nonFraction contextRef="c68" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense" scale="0" unitRef="usd">365,646</ix:nonFraction> and $<ix:nonFraction contextRef="c69" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense" scale="0" unitRef="usd">325,067</ix:nonFraction> for the years ended June 30, 2023 and 2022, respectively.</p>

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



<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify; text-indent: 0in"><ix:nonNumeric contextRef="c0" continuedAt="_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock-c0_cont_1" escape="true" name="us-gaap:ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock">The ESOP shares as of June 30, 2023
and 2022 were as follows:</ix:nonNumeric></p>

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

<ix:continuation id="_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock-c0_cont_1"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <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">2023</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">2022</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%; text-indent: 0in">Allocated shares</td><td style="width: 1%">&#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:EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" scale="0" unitRef="shares">484,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">&#160;</td><td style="width: 10%; text-align: right"><ix:nonFraction contextRef="c4" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" scale="0" unitRef="shares">496,091</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">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="c3" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares" scale="0" unitRef="shares">233,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="c4" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares" scale="0" unitRef="shares">256,293</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">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="c3" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPSharesInESOP" scale="0" unitRef="shares">718,603</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="c4" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPSharesInESOP" scale="0" unitRef="shares">752,384</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 10pt; 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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPDeferredSharesFairValue" scale="0" unitRef="usd">3,913,554</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeStockOwnershipPlanESOPDeferredSharesFairValue" scale="0" unitRef="usd">3,649,612</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table></ix:continuation>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">The Company may at times be required to repurchase
shares at the ESOP participants&#8217; request at the fair market value. During the twelve months ended June 30, 2023 and 2022, the Company
did not repurchase shares previously held by the ESOP.</p></ix:nonNumeric><div>
</div><!-- Field: Page; Sequence: 26 --><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 -->25<!-- 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: 0">Espey Mfg. &amp; Electronics Corp.</p><p style="border-bottom: Black 0.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt"><span style="text-decoration: none">Notes to Financial Statements </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Note 10. Employee Stock Ownership Plan, <i>Continued</i></p></div><div>
    </div><!-- Field: /Page --><div>

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

</div><ix:continuation id="esp_EmployeeStockOwnershipPlanTextBlock-c0_cont_1"><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 twelve months ended June 30, 2023 and 2022 totaled <ix:nonFraction contextRef="c68" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan" scale="0" unitRef="shares">33,780</ix:nonFraction> shares and <ix:nonFraction contextRef="c69" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan" scale="0" unitRef="shares">14,265</ix:nonFraction> shares, respectively.</p></ix:continuation><div>

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

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

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">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. Included as a reduction to the cost recognized for share-based payments is an estimate for option
forfeitures. It is the Company&#8217;s policy to estimate expected option forfeitures based on historical experience. Actual forfeitures
are adjusted prior to the vesting date if the impact is material.</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Total stock-based compensation expense recognized
in the statements of comprehensive income for the fiscal years ended June 30, 2023 and 2022, was $<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" unitRef="usd">227,132</ix:nonFraction> and $<ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" unitRef="usd">176,696</ix:nonFraction>, respectively,
before income taxes. The amount of this stock-based compensation expense related to non-qualified stock options (&#8220;NQSO&#8221;) for
the fiscal years ended June 30, 2023 and 2022, was $<ix:nonFraction contextRef="c70" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" unitRef="usd">21,432</ix:nonFraction> and $<ix:nonFraction contextRef="c71" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" unitRef="usd">29,287</ix:nonFraction>, respectively. The deferred tax benefit related to the NQSO&#8217;s
as of June 30, 2023 and 2022 was approximately $<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" scale="0" unitRef="usd">4,501</ix:nonFraction> and $<ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" scale="0" unitRef="usd">6,150</ix:nonFraction>, respectively. The remaining stock option expense, in each year, related
to incentive stock options (&#8220;ISO&#8221;) which are not deductible by the corporation when exercised, assuming a qualifying disposition
and as such no deferred tax benefit was established related to these amounts.</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">As of June 30, 2023, there was approximately $<ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" scale="0" unitRef="usd">155,154</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="c5" format="ixt-sec:duryear" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">2</ix:nonNumeric> years, of
which $<ix:nonFraction contextRef="c72" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" scale="0" unitRef="usd">128,766</ix:nonFraction> relates to ISO&#8217;s and $<ix:nonFraction contextRef="c73" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" scale="0" unitRef="usd">26,388</ix:nonFraction> relates to NQSO&#8217;s. The total deferred tax benefit related the NQSO&#8217;s in
future years will be $<ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="esp:DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts" scale="0" unitRef="usd">5,541</ix:nonFraction>.</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"), approved by the Company's shareholders at the Company's Annual Meeting on December 1, 2017. 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="c74" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" scale="0" unitRef="shares">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="c74" decimals="INF" format="ixt:num-dot-decimal" name="esp:NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear" scale="0" unitRef="shares">13,300</ix:nonFraction> and <ix:nonNumeric contextRef="c75" name="esp:PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear">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="c76" decimals="INF" format="ixt:num-dot-decimal" name="esp:NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear" scale="0" unitRef="shares">15,000</ix:nonFraction> in a fiscal year. Generally, options granted have a two-year vesting period based on <ix:nonNumeric contextRef="c77" format="ixt-sec:durwordsen" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1">two
years</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="c78" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" scale="0" unitRef="shares">400,000</ix:nonFraction> shares are
authorized for issuance under the 2017 Plan. As of June 30, 2023, options covering <ix:nonFraction contextRef="c78" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" scale="0" unitRef="shares">382,104</ix:nonFraction> shares have been granted, of which
<ix:nonFraction contextRef="c79" decimals="INF" format="ixt:num-dot-decimal" name="esp:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber" scale="0" unitRef="shares">245,831</ix:nonFraction> are outstanding, and <ix:nonFraction contextRef="c79" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" scale="0" unitRef="shares">136,273</ix:nonFraction> shares have been cancelled. As of June 30, 2023, option covering <ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" scale="0" unitRef="shares">154,169</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 June 30, 2023, <ix:nonFraction contextRef="c80" decimals="INF" format="ixt:num-dot-decimal" name="esp:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber" scale="0" unitRef="shares">50,500</ix:nonFraction> options were
outstanding under such plan of which all are vested and exercisable.</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 volatility, expected life, and interest rates.</p><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">&#160;</p></ix:nonNumeric><div>

</div><div>
</div><!-- Field: Page; Sequence: 27 --><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 -->26<!-- 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: 0">Espey Mfg. &amp; Electronics Corp.</p><p style="border-bottom: Black 0.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt"><span style="text-decoration: none">Notes to Financial Statements </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Note 11. Stock-based Compensation, <i>Continued</i></p></div><div>
    </div><!-- Field: /Page --><div>


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

</div><ix:continuation continuedAt="_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock-c0_cont_2" id="_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock-c0_cont_1"><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><ix:nonNumeric contextRef="c0" continuedAt="_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock-c0_cont_1" escape="true" name="us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock">The table below outlines the weighted average assumptions
that the Company used to calculate the fair value of each option award for the year ended June 30, 2023 and 2022.</ix:nonNumeric></p>

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

<ix:continuation id="_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock-c0_cont_1"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap; text-align: justify">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">2023</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">2022</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 78%; text-align: left; text-indent: 0in">Dividend yield</td><td style="width: 1%">&#160;</td>
    <td style="width: 10%; text-align: right"><ix:nonFraction contextRef="c0" decimals="4" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" scale="-2" unitRef="pure">0.03</ix:nonFraction>%</td><td style="width: 1%">&#160;</td>
    <td style="width: 10%; text-align: right"><div style="-sec-ix-hidden: hidden-fact-14">&#8212;</div></td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left">Expected stock price volatility</td><td>&#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">27.20</ix:nonFraction>%</td><td>&#160;</td>
    <td style="text-align: right"><ix:nonFraction contextRef="c5" decimals="4" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" scale="-2" unitRef="pure">25.60</ix:nonFraction>%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Risk-free interest rate</td><td>&#160;</td>
    <td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="4" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2" unitRef="pure">2.71</ix:nonFraction>%</td><td>&#160;</td>
    <td style="text-align: right"><ix:nonFraction contextRef="c5" decimals="4" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2" unitRef="pure">0.99</ix:nonFraction>%</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left">Expected option life (in years)</td><td>&#160;</td>
    <td style="text-align: right"><ix:nonNumeric contextRef="c0" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1">5.4</ix:nonNumeric>yrs</td><td>&#160;</td>
    <td style="text-align: right"><ix:nonNumeric contextRef="c5" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1">5.4</ix:nonNumeric>yrs</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-indent: -10pt">Weighted average fair value per share of options granted during the period</td><td>&#160;</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">4.18</ix:nonFraction></td><td>&#160;</td>
    <td style="text-align: right">$<ix:nonFraction contextRef="c5" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" unitRef="usdPershares">3.74</ix:nonFraction></td></tr>
  </table></ix:continuation>


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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Effective March 13, 2023, the Company reinstated
payment of a quarterly dividend. The Company paid regular cash dividends on common stock of $<ix:nonFraction contextRef="c70" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" unitRef="usdPershares">0.20</ix:nonFraction> per share for the fiscal year
ended June 30, 2023 and paid no cash dividends for the fiscal year ended June 30, 2022. 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: 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><ix:nonNumeric contextRef="c0" continuedAt="_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock-c0_cont_1" escape="true" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock">The following table summarizes stock option
activity during the twelve months ended June 30, 2023:</ix:nonNumeric></p>

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

<ix:continuation id="_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock-c0_cont_1"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="15" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">Employee Stock Options Plan</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 style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">&#160;</td><td style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Weighted</td><td style="text-align: center">&#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 style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Weighted</td><td style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Average</td><td style="text-align: center">&#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 style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Average</td><td style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Remaining</td><td style="text-align: center">&#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 style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Exercise</td><td style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Contractual</td><td style="text-align: center">&#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>&#160;</td>
    <td colspan="3" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">to Option</td><td style="text-align: center; border-bottom: Black 1pt solid">&#160;</td>
    <td colspan="3" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">Price</td><td style="text-align: center; border-bottom: Black 1pt solid">&#160;</td>
    <td colspan="3" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">Term</td><td style="text-align: center; border-bottom: Black 1pt solid">&#160;</td>
    <td colspan="3" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">Value</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 49%">Balance at July 1, 2022</td><td style="width: 3%">&#160;</td>
    <td style="width: 3%; text-align: left">&#160;</td><td style="width: 5%; text-align: right"><ix:nonFraction contextRef="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" unitRef="shares">246,273</ix:nonFraction></td><td style="white-space: nowrap; width: 3%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 3%; text-align: right">$</td><td style="width: 5%; text-align: right"><ix:nonFraction contextRef="c4" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" unitRef="usdPershares">20.89</ix:nonFraction></td><td style="white-space: nowrap; width: 3%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 3%; text-align: left">&#160;</td><td style="width: 5%; text-align: right"><ix:nonNumeric contextRef="c0" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2">6.73</ix:nonNumeric></td><td style="white-space: nowrap; width: 3%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 3%; text-align: right">&#160;</td><td style="width: 5%; text-align: right">&#160;</td><td style="white-space: nowrap; width: 4%; 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="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" unitRef="shares">74,200</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: right">$</td><td style="text-align: right"><ix:nonFraction contextRef="c0" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0" unitRef="usdPershares">13.81</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="c0" format="ixt-sec:duryear" name="esp:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm">9.12</ix:nonNumeric></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: right">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Exercised</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-15">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: right">&#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"><div style="-sec-ix-hidden: hidden-fact-17">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: right">&#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>&#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:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" scale="0" unitRef="shares">24,142</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: right">$</td><td style="border-bottom: Black 1pt solid; text-align: right"><ix:nonFraction contextRef="c0" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" scale="0" unitRef="usdPershares">20.46</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-18">&#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: right">&#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 June 30, 2023</td><td>&#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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" unitRef="shares">296,331</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: right">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c3" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" unitRef="usdPershares">19.15</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="c0" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1">6.49</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: right">$</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:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" scale="0" unitRef="usd">338,243</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 June 30, 2023</td><td>&#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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" scale="0" unitRef="shares">283,745</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: right">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c3" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" scale="0" unitRef="usdPershares">19.40</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="c0" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1">6.38</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: right">$</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:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" scale="0" unitRef="usd">298,723</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 June 30, 2023</td><td>&#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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" scale="0" unitRef="shares">163,731</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: right">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction contextRef="c3" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" scale="0" unitRef="usdPershares">23.13</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="c0" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2">4.74</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: right">$</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:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue" scale="0" unitRef="usd">0</ix:nonFraction></td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td></tr>
  </table></ix:continuation>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 June 30, 2023 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 June 30, 2023. This amount changes based
on the fair market value of the Company&#8217;s common stock. The total intrinsic values of the options exercised during the twelve months
ended June 30, 2023 and 2022 was $<ix:nonFraction contextRef="c0" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" scale="0" unitRef="usd"><ix:nonFraction contextRef="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" scale="0" unitRef="usd">0</ix:nonFraction></ix:nonFraction>.</p><p style="font: 10pt Times New Roman, Times, Serif; text-indent: 0pt; margin: 0pt; text-align: justify">&#160;</p></ix:continuation><div>

</div><div>

</div><!-- Field: Page; Sequence: 28 --><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 -->27<!-- 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: 0">Espey Mfg. &amp; Electronics Corp.</p><p style="border-bottom: Black 0.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt"><span style="text-decoration: none">Notes to Financial Statements </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Note 11. Stock-based Compensation, <i>Continued</i></p></div><div>
    </div><!-- Field: /Page --><div>

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

</div><ix:continuation id="_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock-c0_cont_2"><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt"><ix:nonNumeric contextRef="c0" continuedAt="_ScheduleOfNonvestedShareActivityTableTextBlock-c0_cont_1" escape="true" name="us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock">The following table summarizes changes in non-vested stock options
during the twelve months ended June 30, 2023:</ix:nonNumeric></p>

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

<ix:continuation id="_ScheduleOfNonvestedShareActivityTableTextBlock-c0_cont_1"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">&#160;</td><td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Weighted</td><td style="text-align: center; vertical-align: bottom">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Number of</td><td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Average</td><td style="text-align: center; vertical-align: bottom">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Shares</td><td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Grant Date</td><td style="text-align: center; vertical-align: bottom">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Subject</td><td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Fair Value</td><td style="text-align: center; vertical-align: bottom">&#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="vertical-align: bottom; white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">to Option</td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">(per Option)</td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%">Non-Vested at July 1, 2022</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right"><ix:nonFraction contextRef="c4" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" scale="0" unitRef="shares">104,175</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="c4" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" unitRef="usdPershares">2.92</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">74,200</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:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" unitRef="usdPershares">4.18</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">34,075</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="c0" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" scale="0" unitRef="usdPershares">1.59</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="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="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares" scale="0" unitRef="shares">11,700</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="c0" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" scale="0" unitRef="usdPershares">2.75</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-bottom: 2.5pt">Non-Vested at June 30, 2023</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="c3" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" scale="0" unitRef="shares">132,600</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="INF" format="ixt:num-dot-decimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" unitRef="usdPershares">3.98</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table></ix:continuation></ix:continuation><div>


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

</div><ix:nonNumeric contextRef="c0" escape="true" name="us-gaap:ConcentrationRiskDisclosureTextBlock"><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt">Note 12. Concentration of Credit Risk</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Financial instruments that potentially subject the
Company to concentrations of credit risk consist principally of cash and cash equivalents, short-term investments and accounts receivable.
The Company maintains cash and cash equivalents with various financial institutions. At times such investments may be in excess of FDIC
insurance limits. As disclosed in Note 9, a significant portion of the Company's business is the production of military and industrial
electronic equipment for use by the U.S. and foreign governments and certain industrial customers. The related accounts receivable balance,
as a percentage of the Company's total trade accounts receivable balance, was <ix:nonFraction contextRef="c81" decimals="INF" format="ixt:num-dot-decimal" name="esp:ConcentrationRiskPercentageOne" scale="-2" unitRef="pure">81</ix:nonFraction>% represented by <ix:nonFraction contextRef="c81" decimals="INF" format="ixt-sec:numwordsen" name="esp:ConcentrationRiskNumberOfCustomers" scale="0" unitRef="pure">five</ix:nonFraction> customers at June 30, 2023 and <ix:nonFraction contextRef="c82" decimals="INF" format="ixt:num-dot-decimal" name="esp:ConcentrationRiskPercentageOne" scale="-2" unitRef="pure">74</ix:nonFraction>%
represented by <ix:nonFraction contextRef="c82" decimals="INF" format="ixt-sec:numwordsen" name="esp:ConcentrationRiskNumberOfCustomers" scale="0" unitRef="pure">four</ix:nonFraction> customers at June 30, 2022.</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Although the Company's exposure to credit risk
associated with nonpayment of these concentrated balances is affected by the conditions or occurrences within the U.S. and foreign governments,
the Company believes that its trade accounts receivable credit risk exposure is limited. The Company performs ongoing credit evaluations
of its customer's financial conditions and requires collateral, such as progress payments, in certain circumstances. The Company establishes
an allowance for doubtful accounts based upon factors surrounding the credit risk of specific customers, historical trends and other information.</p></ix:nonNumeric><div>

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

</div><ix:nonNumeric contextRef="c0" escape="true" name="us-gaap:RelatedPartyTransactionsDisclosureTextBlock"><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Note 13. Related Parties</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">The administration of the
shares of common stock held by the ESOP Trust is subject to the Espey Mfg. &amp; Electronics Corp. Employee Retirement Plan and
Trust (ESOP) and a Trust Agreement, each effective as of July 1, 2016. The Trustees&#8217; rights with respect to the disposition of
shares are governed by the terms of the Plan and the Trust Agreement. As to shares that have been allocated to the accounts of
participants in the ESOP Trust, the Plan provides that the Trustees are required to vote such shares in accordance with instructions
received from the participants. As to unallocated shares and allocated shares for which voting instructions have not been received
from participants, the Plan provides that the Trustees are required to vote such shares in accordance with the direction of the
Board of Directors of the Company under the terms of the Plan and Trust Agreement, which is
currently in the same proportion as the instructions received on the allocated shares. See Note 10 for additional information
regarding the ESOP.</p></ix:nonNumeric><div>

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

</div><ix:nonNumeric contextRef="c0" continuedAt="_CommitmentsAndContingenciesDisclosureTextBlock-c0_cont_1" escape="true" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0pt">Note 14. Commitments
and Contingencies</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">The Company at certain times
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="c83" decimals="0" format="ixt:fixed-zero" name="us-gaap:LossContingencyAccrualAtCarryingValue" scale="0" unitRef="usd"><ix:nonFraction contextRef="c84" decimals="0" format="ixt:fixed-zero" name="us-gaap:LossContingencyAccrualAtCarryingValue" scale="0" unitRef="usd">zero</ix:nonFraction></ix:nonFraction> at
June 30, 2023 and 2022. 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="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">&#160;</p></ix:nonNumeric><div>
</div><div>

</div><!-- Field: Page; Sequence: 29 --><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 -->28<!-- 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: 0">Espey Mfg. &amp; Electronics Corp.</p><p style="border-bottom: Black 0.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt"><span style="text-decoration: none">Notes to Financial Statements </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Note 14. Commitments and Contingencies, <i>Continued</i></p></div><div>
    </div><!-- Field: /Page --><div>

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




</div><ix:continuation id="_CommitmentsAndContingenciesDisclosureTextBlock-c0_cont_1"><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">We are party to various litigation matters and claims
arising from time to time in the ordinary course of business. While the results of such matters cannot be predicted with certainty,
we believe that the final outcome of such matters will not have a material adverse effect on our business, financial condition, results
of operations or cash flows. Currently, there are no matters pending.</p></ix:continuation><div>

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

</div><ix:nonNumeric contextRef="c0" continuedAt="_StockholdersEquityNoteDisclosureTextBlock-c0_cont_1" escape="true" name="us-gaap:StockholdersEquityNoteDisclosureTextBlock"><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Note 15. Stockholders' Equity</p>

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

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

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><ix:nonNumeric contextRef="c0" continuedAt="esp_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock-c0_cont_1" escape="true" name="esp:ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock">The Company has reserved common shares for future
issuance as follows as of June 30, 2023:</ix:nonNumeric></p>

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

<ix:continuation id="esp_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock-c0_cont_1"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 80%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 87%; text-align: left">Stock options outstanding</td><td style="width: 1%">&#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:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" unitRef="shares">296,331</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; padding-bottom: 1pt">Stock options available for issuance</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="INF" format="ixt:num-dot-decimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" scale="0" unitRef="shares">154,169</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-bottom: 2.5pt">Number of common shares reserved</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="c3" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockCapitalSharesReservedForFutureIssuance" scale="0" unitRef="shares">450,500</ix:nonFraction></td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table></ix:continuation>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-indent: 0pt; text-align: justify"><ix:nonNumeric contextRef="c0" continuedAt="_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock-c0_cont_1" escape="true" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">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 years ended
June 30:</ix:nonNumeric></p>

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

<ix:continuation id="_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock-c0_cont_1"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <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">2023</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">2022</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">Numerator:</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: 74%; 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: 10%; 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">3,677,131</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: 10%; 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">1,265,127</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; ">
    <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>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 style="font-family: Courier New, Courier, Monospace">&#160;</td>
    <td style="font-family: Courier New, Courier, Monospace; text-align: left">&#160;</td><td style="font-family: Courier New, Courier, Monospace; text-align: right">&#160;</td><td style="white-space: nowrap; font-family: Courier New, Courier, Monospace; text-align: left">&#160;</td><td style="font-family: Courier New, Courier, Monospace">&#160;</td>
    <td style="font-family: Courier New, Courier, Monospace; text-align: left">&#160;</td><td style="font-family: Courier New, Courier, Monospace; text-align: right">&#160;</td><td style="white-space: nowrap; font-family: Courier New, Courier, Monospace; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 30pt; text-align: left">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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ExcessStockSharesOutstanding" scale="0" unitRef="shares">2,702,633</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ExcessStockSharesOutstanding" scale="0" unitRef="shares">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="text-indent: -10pt; padding-left: 30pt; text-align: left">Common shares issued to ESOP during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-19">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-20">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 30pt">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:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" scale="0" unitRef="shares">256,293</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="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" scale="0" unitRef="shares">279,429</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="text-indent: -10pt; padding-left: 30pt">Weighted average common shares issued during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-21">&#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"><div style="-sec-ix-hidden: hidden-fact-22">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 30pt">Weighted average common shares purchased during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-23">&#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"><div style="-sec-ix-hidden: hidden-fact-24">&#8212;</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="text-indent: -10pt; padding-left: 30pt; padding-bottom: 1pt">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:WeightedAverageNumberOfSharesContingentlyIssuable" scale="0" unitRef="shares">8,516</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:WeightedAverageNumberOfSharesContingentlyIssuable" scale="0" unitRef="shares">8,700</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-indent: -10pt; padding-left: 30pt; padding-bottom: 2.5pt">Denominator for basic earnings per common shares &#8211; 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:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" unitRef="shares">2,454,856</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="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" unitRef="shares">2,431,904</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-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="text-indent: -10pt; padding-left: 30pt">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="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ExcessStockSharesOutstanding" scale="0" unitRef="shares">2,702,633</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="c4" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:ExcessStockSharesOutstanding" scale="0" unitRef="shares">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="text-indent: -10pt; padding-left: 30pt; text-align: left">Common shares issued to ESOP during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-25">&#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"><div style="-sec-ix-hidden: hidden-fact-26">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 30pt">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:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" scale="0" unitRef="shares">256,293</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="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" scale="0" unitRef="shares">279,429</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="text-indent: -10pt; padding-left: 30pt">Weighted average common shares issued during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-27">&#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"><div style="-sec-ix-hidden: hidden-fact-28">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 30pt">Weighted average common shares purchased during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-29">&#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"><div style="-sec-ix-hidden: hidden-fact-30">&#8212;</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="text-indent: -10pt; padding-left: 30pt">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:WeightedAverageNumberOfSharesContingentlyIssuable" scale="0" unitRef="shares">8,516</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:WeightedAverageNumberOfSharesContingentlyIssuable" scale="0" unitRef="shares">8,700</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 30pt; padding-bottom: 1pt">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">16,160</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-31">&#8212;</div></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-indent: -10pt; padding-left: 30pt; padding-bottom: 2.5pt">Denominator for diluted earnings per common shares &#8211; 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">2,471,016</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="c5" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" unitRef="shares">2,431,904</ix:nonFraction></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: 0; text-align: justify">&#160;</p></ix:continuation></ix:nonNumeric><div>

</div><div>

</div><!-- Field: Page; Sequence: 30 --><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 -->29<!-- 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: 0">Espey Mfg. &amp; Electronics Corp.</p><p style="border-bottom: Black 0.5pt solid; font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt"><span style="text-decoration: none">Notes to Financial Statements </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Note 15. Stockholders' Equity, <i>Continued</i></p></div><div>
    </div><!-- Field: /Page --><div>

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

</div><ix:continuation id="_StockholdersEquityNoteDisclosureTextBlock-c0_cont_1"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-indent: 0pt; text-align: justify">Not included in this computation of earnings
per share for the year ended June 30, 2023 and 2022 were options to purchase <ix:nonFraction contextRef="c0" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" unitRef="shares">130,656</ix:nonFraction> and <ix:nonFraction contextRef="c5" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" unitRef="shares">246,273</ix:nonFraction> shares, respectively, of the Company&#8217;s
common stock. These options were excluded because their inclusion would have been anti-dilutive due to the average strike price exceeding
the average market price of those shares.</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-indent: 0pt; text-align: justify">Effective March 13, 2023, the
Company reinstated payment of a quarterly dividend. The Company paid regular cash dividends on common stock of $<ix:nonFraction contextRef="c0" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:CommonStockDividendsPerShareCashPaid" scale="0" unitRef="usdPershares">0.20</ix:nonFraction> per share for the
fiscal year ended June 30, 2023 and paid <span style="-sec-ix-hidden: hidden-fact-32">no</span> cash dividends for the fiscal year ended June 30, 2022. Our Board of Directors assesses the
Company&#8217;s dividend policy periodically. There is no assurance that the Board of Directors will maintain the amount of the regular
cash dividend during any future years.</p></ix:continuation><div>

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

</div><ix:nonNumeric contextRef="c0" escape="true" name="us-gaap:DebtDisclosureTextBlock"><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Note 16. Line of Credit</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">At June 30, 2023, the Company has an uncommitted
and unused Line of Credit with a financial institution. The agreement provides that the Company may borrow up to $<ix:nonFraction contextRef="c3" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="0" unitRef="usd">3,000,000</ix:nonFraction>. The line
provides for interest payments equal to the BSBY Daily Floating Rate plus <ix:nonFraction contextRef="c85" decimals="INF" format="ixt:num-dot-decimal" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" unitRef="pure">2</ix:nonFraction> percentage points. Any borrowing under the line of credit
will be collateralized by accounts receivable. All outstanding balances are payable no later than the expiration date of the agreement,
unless other terms are agreed to by the lender. The existing line of credit expires February 28, 2024. The Company did not borrow any
funds during the last two fiscal years.</p></ix:nonNumeric><div>

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

</div><ix:nonNumeric contextRef="c0" escape="true" name="us-gaap:QuarterlyFinancialInformationTextBlock"><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Note 17. Quarterly Financial Information (Unaudited)</p>

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

<ix:nonNumeric contextRef="c0" escape="true" name="us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 90%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap; text-align: justify">&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">First</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Second</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Third</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Fourth</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap; font-weight: bold">2023</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Quarter</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">Quarter</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">Quarter</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">Quarter</td><td style="padding-bottom: 1pt">&#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="c86" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd">8,635,795</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="c87" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd">8,804,109</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="c88" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd">9,809,616</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="c89" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd">8,342,803</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">Gross profit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c86" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:GrossProfit" scale="0" unitRef="usd">1,812,142</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="c87" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:GrossProfit" scale="0" unitRef="usd">2,260,722</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="c88" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:GrossProfit" scale="0" unitRef="usd">1,973,429</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="c89" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:GrossProfit" scale="0" unitRef="usd">2,004,245</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">Net income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c86" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd">768,266</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="c87" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd">1,146,042</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="c88" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd">867,288</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="c89" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd">895,535</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <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; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Basic</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c86" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareBasic" scale="0" unitRef="usdPershares">0.31</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="c87" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareBasic" scale="0" unitRef="usdPershares">0.47</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="c88" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareBasic" scale="0" unitRef="usdPershares">0.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="c89" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareBasic" scale="0" unitRef="usdPershares">0.37</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 10pt">Diluted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c86" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareDiluted" scale="0" unitRef="usdPershares">0.31</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="c87" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareDiluted" scale="0" unitRef="usdPershares">0.47</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="c88" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareDiluted" scale="0" unitRef="usdPershares">0.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="c89" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareDiluted" scale="0" unitRef="usdPershares">0.36</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="white-space: nowrap; font-weight: bold">2022</td><td>&#160;</td>
    <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">Net sales</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction contextRef="c90" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd">7,545,432</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="c91" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd">7,458,050</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="c92" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd">8,620,049</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="c93" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:Revenues" scale="0" unitRef="usd">8,481,243</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">Gross profit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c90" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:GrossProfit" scale="0" unitRef="usd">1,353,098</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="c91" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:GrossProfit" scale="0" unitRef="usd">1,206,817</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="c92" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:GrossProfit" scale="0" unitRef="usd">1,734,880</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="c93" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:GrossProfit" scale="0" unitRef="usd">1,177,363</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">Net income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c90" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd">306,061</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="c91" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd">21,201</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="c92" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd">661,359</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="c93" decimals="0" format="ixt:num-dot-decimal" name="us-gaap:NetIncomeLoss" scale="0" unitRef="usd">276,506</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <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; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Basic</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c90" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareBasic" scale="0" unitRef="usdPershares">0.13</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="c91" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareBasic" scale="0" unitRef="usdPershares">0.01</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="c92" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareBasic" scale="0" unitRef="usdPershares">0.27</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="c93" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareBasic" scale="0" unitRef="usdPershares">0.11</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 10pt">Diluted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction contextRef="c90" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareDiluted" scale="0" unitRef="usdPershares">0.13</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="c91" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareDiluted" scale="0" unitRef="usdPershares">0.01</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="c92" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareDiluted" scale="0" unitRef="usdPershares">0.27</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="c93" decimals="2" format="ixt:num-dot-decimal" name="us-gaap:EarningsPerShareDiluted" scale="0" unitRef="usdPershares">0.11</ix:nonFraction></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  </table></ix:nonNumeric></ix:nonNumeric><div>

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

</div><!-- Field: Page; Sequence: 31 --><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 -->30<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>

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

</div><table cellpadding="0" cellspacing="0" style="width: 100%; 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.5in">Item 9.</td><td>Changes in and Disagreements with Accountants on Accounting and Financial Disclosure</td></tr></table><div>

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

</div><table cellpadding="0" cellspacing="0" style="width: 100%; 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.5in">Item 9A.</td><td>Controls and Procedures</td></tr></table><div>

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 10pt 0pt; text-indent: 0in">Evaluation of Controls and Procedures</p><div>

</div><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 Annual Report on Form 10-K. 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; text-indent: 0pt; margin: 0pt; text-align: justify">&#160;</p><div>

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

</div><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Management&#8217;s Report on Internal Control
over Financial Reporting</p><div>

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

</div><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Management of our Company is responsible for
establishing and maintaining adequate internal control over financial reporting, as that term is defined in Exchange Act Rules 13a-15(f)
and 15d-15(f). Our internal control over financial reporting is a process designed 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.</p><div>

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

</div><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Because of its inherent limitations, internal
control over financial reporting may not prevent or detect misstatements. Also, projections of any evaluation of effectiveness to future
periods are subject to the risk that controls may become inadequate because of changes in conditions, or that the degree of compliance
with the policies or procedures may deteriorate.</p><div>

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

</div><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Under the supervision and with the participation
of our management, including the principal executive officer and principal financial officer, we conducted an evaluation of the effectiveness
of our internal control over financial reporting using the criteria set forth in Internal Control-Integrated Framework issued by the Committee
of Sponsoring Organizations of the Treadway Commission in 2013. Based on our evaluation using the criteria set forth in Internal Control-Integrated
Framework, management has concluded that our internal control over financial reporting was effective as of June 30, 2023.</p><div>

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

</div><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">This annual report does not include an attestation
report of our registered public accounting firm regarding internal control over financial reporting. Our report was not subject to attestation
by our registered public accounting firm pursuant to rules of the SEC that permit us to provide only management&#8217;s report in this
annual report.</p><div>

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

</div><table cellpadding="0" cellspacing="0" style="width: 100%; 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.5in">Item 9B.</td><td>Other information</td></tr></table><div>

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

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

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">The information called for by "Item 10. Directors,
Executive Officers, and Corporate Governance", "Item 11. Executive Compensation", "Item 12. Security Ownership of
Certain Beneficial Owners and Management and Related Stockholder Matters", "Item 13. Certain Relationships and Related Transactions,
and Director Independence" and "Item 14. Principal Accountant Fees and Services", is hereby incorporated by reference to
the Company's Proxy Statement for its Annual Meeting of Shareholders, (scheduled to be held on December 1, 2023) to be filed with the
SEC pursuant to Regulation 14A under the Securities Exchange Act of 1934, as amended.</p><div>


</div><!-- Field: Page; Sequence: 32 --><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 -->31<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>


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

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

</div><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: left">Item 15. Exhibits, Financial Statement Schedules,
Signatures</p><div>

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

</div><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; width: 7%; text-align: justify; text-indent: 0pt">3.1</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; width: 93%; text-align: justify; text-indent: 0pt">Certificate
    of incorporation and all amendments thereto (incorporated by &#160;reference to <a href="https://www.sec.gov/Archives/edgar/data/33533/000091431704003536/ex3-1.txt">Exhibit 3.1 to Espey&#8217;s
    Report on Form 10 -K for the year ended June 30, 2004 </a>and <a href="https://www.sec.gov/Archives/edgar/data/33533/000091431705000584/ex3-1.txt">Report
    on Form 10-Q for the quarter ended December
    31, 2004)</a></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">3.2</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">Amended and Restated
    By-Laws (incorporated by reference to <a href="https://www.sec.gov/Archives/edgar/data/33533/000091431709000534/ex3-2.txt">Exhibit
    3.2 to Espey&#8217;s Report on Form 8-K dated
    September 21, 2020)</a> </td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">4.1</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">Description of Capital
    Stock (<a href="https://www.sec.gov/Archives/edgar/data/33533/000091431705003084/form8k-71148_espey.htm">incorporated by reference
    to Espey's Report on Form 8-K dated October 7, 2005</a>)</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">10.3</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">2007 Stock Option and
    Restricted Stock Plan <a href="https://www.sec.gov/Archives/edgar/data/33533/000091431707002537/def14a-87039_esp.txt">(incorporated by reference to Espey&#8217;s Proxy Statement dated October
    23, 2007 for the November 30, 2007 Annual Meeting</a>)</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">10.4</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">2017 Stock Option and
    Restricted Stock Plan <a href="https://www.sec.gov/Archives/edgar/data/33533/000117494717001416/def14a-18917_esp.htm">(incorporated
    by reference to Espey&#8217;s Proxy Statement dated October 27, 2017 for the December 1, 2017 Annual Meeting)</a></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-indent: 0pt">10.13</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-indent: 0pt">Executive Employment Agreement with David O&#8217;Neil <a href="http://www.sec.gov/Archives/edgar/data/33533/000117494722000020/ex10-13.htm" style="-sec-extract: exhibit">(incorporated
    by reference to Exhibit 10.13 on Espey&#8217;s
    Report on Form 8&#8211;K dated January 1, 2022)</a></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">10.14</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">Executive Employment
    Agreement with Peggy Murphy <a href="http://www.sec.gov/Archives/edgar/data/33533/000117494722000238/ex10-14.htm" style="-sec-extract: exhibit">(incorporated
    by reference to Exhibit 10.14 on Espey&#8217;s
    Report on Form 10&#8211;Q dated February 14, 2022)</a></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: left; text-indent: 0pt">10.16</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: left; text-indent: 0pt">Employment Agreement dated
    January 16, 2018 with Patrick Enright, Jr. <a href="https://www.sec.gov/Archives/edgar/data/33533/000117494718000052/ex10-16.htm">(incorporated
    by reference to Exhibit 10.16 on Espey&#8217;s Report on Form 8-K dated January
    16, 2018</a></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: left; text-indent: 0pt">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: left; text-indent: 0pt">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: left; text-indent: 0pt">10.16a</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: left; text-indent: 0pt">First Amendment to Employment
    Agreement dated January 16, 2018 with Patrick Enright, Jr. <a href="https://www.sec.gov/Archives/edgar/data/33533/000117494718000052/ex10-16.htm">(incorporated
    by reference to Exhibit 10.16 on Espey&#8217;s Report on Form 8-K dated October 12, 2021</a></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">10.18</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">Stock Purchase Agreement
    dated as of December 1, 2020 between Espey Mfg. &amp; Electronics Corp. and The Trustees of the Espey Mfg. &amp; Electronics Corp.
    Employee Retirement Plan Trust <a href="http://www.sec.gov/Archives/edgar/data/33533/000117494720001186/ex10-18.htm" style="-sec-extract: exhibit">(incorporated by reference to Exhibit 10.18 on Espey&#8217;s Report on Form 8-K dated December 1,
    2020)</a></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">10.19</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">ESOP Loan Agreement
    dated as of December 1, 2020 between The Trustees of Espey Mfg. &amp; Electronics Corp. Employee Retirement Plan Trust and Espey
    Mfg. &amp; Electronics Corp. <a href="http://www.sec.gov/Archives/edgar/data/33533/000117494720001186/ex10-19.htm" style="-sec-extract: exhibit">(incorporated by reference to Exhibit 10.19 on Espey&#8217;s Report on Form 8-K dated December 1, 2020)</a></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-indent: 0pt">10.20</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-indent: 0pt">Executive Employment Agreement with Katrina L. Sparano <a href="http://www.sec.gov/Archives/edgar/data/33533/000117494722000020/ex10-20.htm" style="-sec-extract: exhibit">(incorporated
    by reference to Exhibit 10.20 on &#160;Espey&#8217;s
    Report on Form 8 &#8211;K dated January 1, 2022)</a></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">14.1</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">Code of ethics (incorporated
    by reference to Espey&#8217;s website www.espey.com)</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">23.1</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt"><a href="ex23-1.htm">Consent of Freed Maxick CPAs, P.C. (filed herewith)</a></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">31.1</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt"><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 (filed herewith)</a></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">31.2</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt"><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 (filed herewith)</a></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt"></td></tr></table><div>

</div><!-- Field: Page; Sequence: 33 --><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 -->32<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>


</div><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
<tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt; width: 7%">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt; width: 93%">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">32.1</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt"><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 (filed herewith)</a></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt">32.2</td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding: 0pt; text-align: justify; text-indent: 0pt"><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 (filed herewith)</a></td></tr>
  </table><div>

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


</div><!-- Field: Page; Sequence: 34 --><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 -->33<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="break-before: page; margin-top: 6pt; margin-bottom: 6pt"><p style="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">S I G N A T U R E S</p><div>

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

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0">Pursuant to the requirements of Section 13 and 15 (d) 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: 0">&#160;</p><div>

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

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

</div><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="vertical-align: top">
    <td style="font-family: Courier New, Courier, Monospace">&#160;</td>
    <td style="width: 3.5in; font-family: Courier New, Courier, Monospace"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">ESPEY MFG. &amp; ELECTRONICS CORP.</span></td></tr>
  <tr style="vertical-align: top">
    <td style="font-family: Courier New, Courier, Monospace">&#160;</td>
    <td style="font-family: Courier New, Courier, Monospace">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td style="font-family: Courier New, Courier, Monospace">&#160;</td>
    <td style="font-family: Courier New, Courier, Monospace">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td style="font-family: Courier New, Courier, Monospace">&#160;</td>
    <td style="font-family: Courier New, Courier, Monospace">&#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 style="font-family: Courier New, Courier, Monospace">&#160;</td>
    <td style="font-family: Courier New, Courier, Monospace"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">September 21, 2023</span></td></tr>
  </table><div>
</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0">&#160;</p><div>

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

</div><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Pursuant to the requirements of the Securities Exchange
Act of 1934, this report has been signed below by the following persons on behalf of the registrant and in the capacities and on the dates
indicated.&#160;</p><div>

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

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

</div><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="vertical-align: top">
    <td style="border-bottom: Black 1pt solid; width: 2in">/s/David O&#8217;Neil</td>
    <td>&#160;</td>
    <td style="width: 3.5in">President and Chief Executive Officer</td></tr>
  <tr style="vertical-align: top">
    <td>David O'Neil</td>
    <td>&#160;</td>
    <td>September 21, 2023</td></tr>
  <tr style="vertical-align: top">
    <td style="font-family: Courier New, Courier, Monospace">&#160;</td>
    <td style="font-family: Courier New, Courier, Monospace">&#160;</td>
    <td style="font-family: Courier New, Courier, Monospace">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td style="border-bottom: Black 1pt solid">/s/Katrina Sparano</td>
    <td>&#160;</td>
    <td>Principal Financial Officer</td></tr>
  <tr style="vertical-align: top">
    <td>Katrina Sparano</td>
    <td>&#160;</td>
    <td>September 21, 2023</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td></tr>
  <tr style="vertical-align: top">
    <td style="border-bottom: Black 1pt solid">/s/Carl Helmetag</td>
    <td>&#160;</td>
    <td>Chairman of the Board</td></tr>
  <tr style="vertical-align: top">
    <td>Carl Helmetag</td>
    <td>&#160;</td>
    <td>September 21, 2023</td></tr>

  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td></tr>
  <tr style="vertical-align: top">
    <td style="border-bottom: Black 1pt solid">/s/Paul J. Corr</td>
    <td>&#160;</td>
    <td>Director</td></tr>
  <tr style="vertical-align: top">
    <td>Paul J. Corr</td>
    <td>&#160;</td>
    <td>September 21, 2023</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td></tr>
  <tr style="vertical-align: top">
    <td style="border-bottom: Black 1pt solid">/s/Nancy Patzwahl</td>
    <td>&#160;</td>
    <td>Director</td></tr>
  <tr style="vertical-align: top">
    <td>Nancy Patzwahl</td>
    <td>&#160;</td>
    <td>September 21, 2023</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td></tr>
  <tr style="vertical-align: top">
    <td style="border-bottom: Black 1pt solid">/s/Michael W. Wool</td>
    <td>&#160;</td>
    <td>Director</td></tr>
  <tr style="vertical-align: top">
    <td>Michael W. Wool</td>
    <td>&#160;</td>
    <td>September 21, 2023</td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td></tr>

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

</div><!-- Field: Page; Sequence: 35 --><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 -->34<!-- Field: /Sequence -->&#160;</p></div><div>
    </div><div style="margin-top: 6pt; margin-bottom: 6pt"><p style="margin: 0pt">&#160;</p></div><div>
    </div><!-- Field: /Page --><div>

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

</div><div style="display: none"><ix:header>
<ix:hidden>
<ix:nonFraction contextRef="c4" id="hidden-fact-0" name="us-gaap:IncomeTaxesReceivable" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c3" id="hidden-fact-1" name="us-gaap:TaxesPayableCurrent" 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="c4" id="hidden-fact-3" name="us-gaap:CommitmentsAndContingencies" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c5" id="hidden-fact-4" name="us-gaap:PaymentsOfDividendsCommonStock" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c5" id="hidden-fact-5" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c46" id="hidden-fact-6" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c46" id="hidden-fact-7" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c49" id="hidden-fact-8" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c49" id="hidden-fact-9" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c50" id="hidden-fact-10" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c4" id="hidden-fact-11" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c0" id="hidden-fact-12" name="us-gaap:EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends" unitRef="pure" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c0" id="hidden-fact-13" name="esp:EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback" unitRef="pure" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c5" id="hidden-fact-14" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" unitRef="pure" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c0" id="hidden-fact-15" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" unitRef="shares" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c0" id="hidden-fact-16" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" unitRef="usdPershares" xsi:nil="true"></ix:nonFraction>
<ix:nonNumeric contextRef="c0" id="hidden-fact-17" name="esp:StockIssuedDuringPeriodSharesStockOptionExercised" xsi:nil="true"></ix:nonNumeric>
<ix:nonNumeric contextRef="c0" id="hidden-fact-18" name="esp:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod" xsi:nil="true"></ix:nonNumeric>
<ix:nonFraction contextRef="c0" id="hidden-fact-19" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" unitRef="shares" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c5" id="hidden-fact-20" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" unitRef="shares" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c0" id="hidden-fact-21" name="us-gaap:WeightedAverageNumberOfSharesIssuedBasic" unitRef="shares" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c5" id="hidden-fact-22" name="us-gaap:WeightedAverageNumberOfSharesIssuedBasic" unitRef="shares" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c0" id="hidden-fact-23" name="us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation" unitRef="shares" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c5" id="hidden-fact-24" name="us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation" unitRef="shares" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c0" id="hidden-fact-25" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" unitRef="shares" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c5" id="hidden-fact-26" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" unitRef="shares" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c0" id="hidden-fact-27" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" unitRef="shares" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c5" id="hidden-fact-28" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" unitRef="shares" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c0" id="hidden-fact-29" name="us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation" unitRef="shares" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c5" id="hidden-fact-30" name="us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation" unitRef="shares" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c5" id="hidden-fact-31" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" unitRef="shares" xsi:nil="true"></ix:nonFraction>
<ix:nonFraction contextRef="c5" id="hidden-fact-32" name="us-gaap:DividendsCash" unitRef="usd" xsi:nil="true"></ix:nonFraction>
<ix:nonNumeric contextRef="c0" name="dei:AmendmentFlag">false</ix:nonNumeric>
<ix:nonNumeric contextRef="c0" name="dei:DocumentFiscalPeriodFocus">FY</ix:nonNumeric>
<ix:nonNumeric contextRef="c0" name="dei:EntityCentralIndexKey">0000033533</ix:nonNumeric>
</ix:hidden>
<ix:references><link:schemaRef xlink:href="esp-20230630.xsd" xlink:type="simple"></link:schemaRef></ix:references>
<ix:resources><xbrli:context id="c0">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c1">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2022-12-31</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c2">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-09-19</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c3">
  <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 id="c4">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2022-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c5">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2021-07-01</xbrli:startDate>
    <xbrli:endDate>2022-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c6">
  <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>2021-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context 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:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2021-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context 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:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2021-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context 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:RetainedEarningsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2021-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context 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:TreasuryStockCommonMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2021-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c11">
  <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>2021-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c12">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2021-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c13">
  <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>2021-07-01</xbrli:startDate>
    <xbrli:endDate>2022-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context 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:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2021-07-01</xbrli:startDate>
    <xbrli:endDate>2022-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context 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:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2021-07-01</xbrli:startDate>
    <xbrli:endDate>2022-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c16">
  <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:startDate>2021-07-01</xbrli:startDate>
    <xbrli:endDate>2022-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context 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:CommonStockMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2022-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context 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:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2022-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context 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:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2022-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context 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:RetainedEarningsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2022-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context 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:TreasuryStockCommonMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2022-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c22">
  <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>2022-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context 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:RetainedEarningsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c24">
  <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>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context 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:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c26">
  <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:startDate>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context 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:CommonStockMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context 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:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context 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:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c30">
  <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 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:TreasuryStockCommonMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c32">
  <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 id="c33">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c34">
  <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="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c35">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c36">
  <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="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c37">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c38">
  <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="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c39">
  <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>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c40">
  <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>2021-07-01</xbrli:startDate>
    <xbrli:endDate>2022-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c41">
  <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>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c42">
  <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>2021-07-01</xbrli:startDate>
    <xbrli:endDate>2022-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c43">
  <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>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c44">
  <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>2022-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c45">
  <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>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c46">
  <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>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c47">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
<!-- [WMV5][XcpuxYn59dz7vgYynUDuwG7r97K2jUTysl7vcz0lJt/tSeJz73kx1cLt0ZFF2SK/vxBCY0vdSrYnt/FcukLonGvrL5wMA+ofwaqo4qMNOuQCZ4f5MsVOmOOAhEIki8WPj8IecsZEAIH93EFFuU1YNbJ9bq3A8pyccr+4dZb24XmdvHCn85JsH7H0AtPOV2WmLkVDPf9RD329k5Bn5/FaLlBT8+9s8oe2tmloh3coIpwefdJI6BJX3jveRxOVHXUzNWLk9gC5sWj3tAbMPZ/pRM8tGOUHTXkQWl4/7M98CArTiLGySc8KtA==] CSR-->
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:MunicipalBondsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c48">
  <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>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c49">
  <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>2022-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c50">
  <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>2022-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c51">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2022-12-31</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c52">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingImprovementsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c53">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingImprovementsMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2022-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c54">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2023-09-01</xbrli:startDate>
    <xbrli:endDate>2023-09-19</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c55">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c56">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2022-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c57">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c58">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2022-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c59">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c60">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2022-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c61">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c62">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2021-07-01</xbrli:startDate>
    <xbrli:endDate>2022-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c63">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c64">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2021-07-01</xbrli:startDate>
    <xbrli:endDate>2022-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c65">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">esp:GeographicConcentrationRisk1Member</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c66">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">esp:GeographicConcentrationRisk1Member</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2021-07-01</xbrli:startDate>
    <xbrli:endDate>2022-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c67">
  <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:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c68">
  <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>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c69">
  <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>2021-07-01</xbrli:startDate>
    <xbrli:endDate>2022-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c70">
  <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>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context 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>2021-07-01</xbrli:startDate>
    <xbrli:endDate>2022-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c72">
  <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>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context 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:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c74">
  <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:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c75">
  <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>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c76">
  <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:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c77">
  <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>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c78">
  <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>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c79">
  <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>
      <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">esp:TwoThousandSeventeenPlanMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c80">
  <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>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c81">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:TradeAccountsReceivableMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c82">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
      <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:TradeAccountsReceivableMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2021-07-01</xbrli:startDate>
    <xbrli:endDate>2022-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c83">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:LossContingenciesByNatureOfContingencyAxis">us-gaap:StandbyLettersOfCreditMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2023-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c84">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:LossContingenciesByNatureOfContingencyAxis">us-gaap:StandbyLettersOfCreditMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:instant>2022-06-30</xbrli:instant>
  </xbrli:period>
</xbrli:context><xbrli:context id="c85">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">esp:LondonInterbankOfferedRatesLIBORMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c86">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="esp:QuarterlyFinancialInformationAxis">esp:FirstQuarterMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c87">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="esp:QuarterlyFinancialInformationAxis">esp:SecondQuarterMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c88">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="esp:QuarterlyFinancialInformationAxis">esp:ThirdQuarterMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c89">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="esp:QuarterlyFinancialInformationAxis">esp:FourthQuarterMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2022-07-01</xbrli:startDate>
    <xbrli:endDate>2023-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c90">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="esp:QuarterlyFinancialInformationAxis">esp:FirstQuarterMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2021-07-01</xbrli:startDate>
    <xbrli:endDate>2022-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c91">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="esp:QuarterlyFinancialInformationAxis">esp:SecondQuarterMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2021-07-01</xbrli:startDate>
    <xbrli:endDate>2022-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c92">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="esp:QuarterlyFinancialInformationAxis">esp:ThirdQuarterMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2021-07-01</xbrli:startDate>
    <xbrli:endDate>2022-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:context id="c93">
  <xbrli:entity>
    <xbrli:identifier scheme="http://www.sec.gov/CIK">0000033533</xbrli:identifier>
    <xbrli:segment>
      <xbrldi:explicitMember dimension="esp:QuarterlyFinancialInformationAxis">esp:FourthQuarterMember</xbrldi:explicitMember>
    </xbrli:segment>
  </xbrli:entity>
  <xbrli:period>
    <xbrli:startDate>2021-07-01</xbrli:startDate>
    <xbrli:endDate>2022-06-30</xbrli:endDate>
  </xbrli:period>
</xbrli:context><xbrli:unit id="usd">
  <xbrli:measure>iso4217:USD</xbrli:measure>
</xbrli:unit><xbrli:unit id="shares">
  <xbrli:measure>xbrli:shares</xbrli:measure>
</xbrli:unit><xbrli:unit 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 id="pure">
  <xbrli:measure>xbrli:pure</xbrli:measure>
</xbrli:unit></ix:resources></ix:header>

</div></div></body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23.1
<SEQUENCE>2
<FILENAME>ex23-1.htm
<DESCRIPTION>EX-23.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: 0; text-align: center">EXHIBIT 23.1</P>

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: center">Consent of Freed Maxick CPAs, P.C.</P>

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

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0 0 12pt; text-align: center">CONSENT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING
FIRM</P>

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

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

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Espey Mfg. &amp; Electronics Corp.</P>

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

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">We hereby consent to the incorporation by reference
in the Registration Statements on Form S-8 (No. 333-148678, and 333-221891) pertaining to the 2007 and 2017 Stock Option Plans of Espey
Mfg. &amp; Electronics Corp. of our report dated September 21, 2023, with respect to the financial statements of Espey Mfg. &amp; Electronics
Corp. included in its Annual Report (Form 10-K) for the year ended June 30, 2023, filed with the Securities and Exchange Commission.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 12pt 0 0">/s/Freed Maxick CPAs, P.C.</P>

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0">September 21, 2023</P>

<!-- Field: Page; Sequence: 1; Options: NewSection; Value: 36 -->
    <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 -->35<!-- 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: 0"></P>

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>3
<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: 0; text-align: center"><FONT STYLE="text-transform: uppercase">Exhibit</FONT>
31.1</P>

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

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

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

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

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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 annual report on Form 10-K of Espey Mfg. &amp; Electronics Corp;</TD></TR></TABLE>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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 is made known to us by others within
those entities, particularly during the period in which this report is being prepared;</TD></TR></TABLE>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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="font: 10pt Times New Roman, Times, Serif; margin: 0 0 4pt 0.5in">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0">Date: September 21, 2023</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; 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="width: 3.5in; border-bottom: Black 1pt solid">/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="font: 10pt Times New Roman, Times, Serif; margin: 0">&nbsp;</P>

<!-- Field: Page; Sequence: 1; Options: NewSection; Value: 37 -->
    <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 -->36<!-- 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: 0"></P>

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>4
<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: 0; text-align: center">&nbsp;</P>

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

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 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: 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: 0">&nbsp;</P>

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0">I, Katrina Sparano, certify that:</P>

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

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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 annual report on Form 10-K of Espey Mfg. &amp; Electronics Corp;</TD></TR></TABLE>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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 is made known to us by others within
those entities, particularly during the period in which this report is being prepared;</TD></TR></TABLE>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 4pt"><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="font: 10pt Times New Roman, Times, Serif; margin: 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0">Date: September 21, 2023</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; 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="width: 3.5in; border-bottom: Black 1pt solid">/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: 0">&nbsp;</P>

<!-- Field: Page; Sequence: 1; Options: NewSection; Value: 38 -->
    <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 -->37<!-- 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: 0"></P>

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>5
<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: 0; text-align: center"><FONT STYLE="text-transform: uppercase">Exhibit</FONT>
32.1</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 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: 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: 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">In connection with this annual report of Espey Mfg.
&amp; Electronics Corp. (the &quot;Company&quot;) on Form 10-K for the period ended June 30, 2023 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: 0; text-align: justify">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0"><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: 0 0 0 0.5in">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0"><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: 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0">Date: September 21, 2023</P>

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; 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="width: 3.5in; border-bottom: Black 1pt solid">/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="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: center">&nbsp;</P>

<!-- Field: Page; Sequence: 1; Options: NewSection; Value: 39 -->
    <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 -->38<!-- 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: 0; text-align: center"></P>

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.2
<SEQUENCE>6
<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: 0; text-align: center"><FONT STYLE="text-transform: uppercase">Exhibit </FONT>32.2</P>

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">In connection with this annual report of Espey Mfg.
&amp; Electronics Corp. (the &quot;Company&quot;) on Form 10-K for the period ended June 30, 2023 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: 0">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0"><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: 0 0 0 0.5in">&nbsp;</P>

<TABLE CELLPADDING="0" CELLSPACING="0" WIDTH="100%" STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0"><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: 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0">Date: September 21, 2023</P>

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 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="width: 3.5in; border-bottom: Black 1pt solid">/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: 0; text-align: center">&nbsp;</P>

<!-- Field: Page; Sequence: 1; Options: NewSection; Value: 40 -->
    <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 -->39<!-- 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: 0; text-align: center"></P>

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>7
<FILENAME>image_001.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 image_001.jpg
M_]C_X  02D9)1@ ! 0$ 8 !@  #_VP!#  @&!@<&!0@'!P<)"0@*#!0-# L+
M#!D2$P\4'1H?'AT:'!P@)"XG("(L(QP<*#<I+# Q-#0T'R<Y/3@R/"XS-#+_
MVP!# 0@)"0P+#!@-#1@R(1PA,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R
M,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C+_P  1" !( +\# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#W^BBB@ HI
M"V*0,#V(^M #J*0MB@,#TH 6BBB@ HHHH ***,T %%)FD+ 4 .HJ&6ZA@C,D
M\B11CJ\C!0/Q-<EJ?Q0\+Z=(T27C7LP_Y9VB&3]1Q5PA*?PJY,I*.YV-&:\S
MD^(?B/4"1H?@Z[93TDN01G\./YU5>;XM:E]R"TL5/8; 1^>36OU>2^)I?,S]
MJNEV>K4M>.3>%?BE<Y,NN 9["ZV_R%49O!GQ+C!(U*:7'9-0/]:M8:+_ .7B
M)=5_RL]QR*3BOGNYE^(^@ O-+JZ(O.[/FK^?-6=)^+_B"T<+?);W\8X.Y?+?
M\Q_A6CP-1J\&F2L3':2L>^#I2URWA7QYH_BI3';.T-XHRUM+PV/4'^(>XKJ
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
"_]D!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>8
<FILENAME>esp-20230630.xsd
<DESCRIPTION>XBRL SCHEMA FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!-- Generated by CompSci Transform (tm) - http://www.compsciresources.com -->
<!-- Created: Thu Sep 21 14:52:04 UTC 2023 -->
<xs:schema elementFormDefault="qualified" xmlns:srt-types="http://fasb.org/srt-types/2023" targetNamespace="http://espey.com/20230630" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:us-types="http://fasb.org/us-types/2023" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:esp="http://espey.com/20230630" 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-20230630_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-20230630_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-20230630_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-20230630_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>001 - 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>002 - 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>003 - Statement - Statements of Comprehensive Income</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>004 - Statement - Statements of Changes in Stockholders' Equity</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>005 - Statement - Statements of Changes in Stockholders' Equity (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>006 - Statement - Statements of Cash Flows</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/NatureofOperations" id="esp_r_NatureofOperations">
        <link:definition>007 - Disclosure - Nature of Operations</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/SummaryofSignificantAccountingPolicies" id="esp_r_SummaryofSignificantAccountingPolicies">
        <link:definition>008 - Disclosure - Summary of Significant Accounting Policies</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>009 - 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/InvestmentSecurities" id="esp_r_InvestmentSecurities">
        <link:definition>010 - 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/ContractsinProcess" id="esp_r_ContractsinProcess">
        <link:definition>011 - Disclosure - Contracts in Process</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/PropertyPlantandEquipment" id="esp_r_PropertyPlantandEquipment">
        <link:definition>012 - Disclosure - Property, Plant and Equipment</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/PensionExpense" id="esp_r_PensionExpense">
        <link:definition>013 - Disclosure - Pension Expense</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/ProvisionforIncomeTaxes" id="esp_r_ProvisionforIncomeTaxes">
        <link:definition>014 - Disclosure - Provision for Income Taxes</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/SignificantCustomers" id="esp_r_SignificantCustomers">
        <link:definition>015 - Disclosure - Significant Customers</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>016 - 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/StockBasedCompensation" id="esp_r_StockBasedCompensation">
        <link:definition>017 - 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/ConcentrationofCreditRisk" id="esp_r_ConcentrationofCreditRisk">
        <link:definition>018 - Disclosure - Concentration of Credit Risk</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/RelatedParties" id="esp_r_RelatedParties">
        <link:definition>019 - Disclosure - Related Parties</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>020 - 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/StockholdersEquity" id="esp_r_StockholdersEquity">
        <link:definition>021 - Disclosure - Stockholders' Equity</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/LineofCredit" id="esp_r_LineofCredit">
        <link:definition>022 - Disclosure - Line of Credit</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/QuarterlyFinancialInformationUnaudited" id="esp_r_QuarterlyFinancialInformationUnaudited">
        <link:definition>023 - Disclosure - Quarterly Financial Information (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/AccountingPoliciesByPolicy" id="esp_r_AccountingPoliciesByPolicy">
        <link:definition>024 - Disclosure - Accounting Policies, by Policy (Policies)</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/SummaryofSignificantAccountingPoliciesTables" id="esp_r_SummaryofSignificantAccountingPoliciesTables">
        <link:definition>025 - Disclosure - Summary of Significant Accounting Policies (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/InvestmentSecuritiesTables" id="esp_r_InvestmentSecuritiesTables">
        <link:definition>026 - 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/ContractsinProcessTables" id="esp_r_ContractsinProcessTables">
        <link:definition>027 - Disclosure - Contracts in Process (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/PropertyPlantandEquipmentTables" id="esp_r_PropertyPlantandEquipmentTables">
        <link:definition>028 - Disclosure - Property, Plant and Equipment (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/ProvisionforIncomeTaxesTables" id="esp_r_ProvisionforIncomeTaxesTables">
        <link:definition>029 - Disclosure - Provision for Income Taxes (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>030 - 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/StockBasedCompensationTables" id="esp_r_StockBasedCompensationTables">
        <link:definition>031 - 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/StockholdersEquityTables" id="esp_r_StockholdersEquityTables">
        <link:definition>032 - Disclosure - Stockholders' Equity (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/QuarterlyFinancialInformationUnauditedTables" id="esp_r_QuarterlyFinancialInformationUnauditedTables">
        <link:definition>033 - Disclosure - Quarterly Financial Information (Unaudited) (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/SummaryofSignificantAccountingPoliciesDetails" id="esp_r_SummaryofSignificantAccountingPoliciesDetails">
        <link:definition>034 - Disclosure - Summary of Significant Accounting Policies (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/ScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable" id="esp_r_ScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable">
        <link:definition>035 - Disclosure - Summary of Significant Accounting Policies (Details) - Schedule of the Estimated Useful Lives of Depreciable Assets</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>036 - 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/ScheduleofAvailableforSaleSecuritiesTable" id="esp_r_ScheduleofAvailableforSaleSecuritiesTable">
        <link:definition>037 - Disclosure - Investment Securities (Details) - Schedule of Available-for-Sale 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/ScheduleofContractualMaturitiesTable" id="esp_r_ScheduleofContractualMaturitiesTable">
        <link:definition>038 - Disclosure - Investment Securities (Details) - Schedule of Contractual Maturities</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/ScheduleofContractsinProcessTable" id="esp_r_ScheduleofContractsinProcessTable">
        <link:definition>039 - Disclosure - Contracts in Process (Details) - Schedule of Contracts in Process</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/PropertyPlantandEquipmentDetails" id="esp_r_PropertyPlantandEquipmentDetails">
        <link:definition>040 - Disclosure - Property, Plant and Equipment (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/ScheduleofPropertyPlantandEquipmentTable" id="esp_r_ScheduleofPropertyPlantandEquipmentTable">
        <link:definition>041 - Disclosure - Property, Plant and Equipment (Details) - Schedule of Property, Plant and Equipment</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/PensionExpenseDetails" id="esp_r_PensionExpenseDetails">
        <link:definition>042 - Disclosure - Pension Expense (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
      </link:roleType>
<!-- [WMV5][XcpuxYn59dz7vgYynUDuwG7r97K2jUTysl7vcz0lJt/tSeJz73kx1cLt0ZFF2SK/vxBCY0vdSrYnt/FcukLonGvrL5wMA+ofwaqo4qMNOuQCZ4f5MsVOmOOAhEIki8WPj8IecsZEAIH93EFFuU1YNbJ9bq3A8pyccr+4dZb24XmdvHCn85JsH7H0AtPOV2WmLkVDPf9RD329k5Bn5/FaLlBT8+9s8oe2tmloh3coIpwefdJI6BJX3jveRxOVHXUzNWLk9gC5sWj3tAbMPZ/pRLzyJU+YZ0rP+1DLHqC9uTeqJgSMYONjtg==] CSR-->
      <link:roleType roleURI="http://espey.com/role/ScheduleofComponentsoftheProvisionforIncomeTaxesTable" id="esp_r_ScheduleofComponentsoftheProvisionforIncomeTaxesTable">
        <link:definition>043 - Disclosure - Provision for Income Taxes (Details) - Schedule of Components of the Provision for Income Taxes</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/ScheduleofEffectiveIncomeTaxRatesTable" id="esp_r_ScheduleofEffectiveIncomeTaxRatesTable">
        <link:definition>044 - Disclosure - Provision for Income Taxes (Details) - Schedule of Effective Income Tax Rates</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/ScheduleofDeferredTaxAssetsandLiabilitiesTable" id="esp_r_ScheduleofDeferredTaxAssetsandLiabilitiesTable">
        <link:definition>045 - Disclosure - Provision for Income Taxes (Details) - Schedule of Deferred Tax Assets and Liabilities</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/SignificantCustomersDetails" id="esp_r_SignificantCustomersDetails">
        <link:definition>046 - Disclosure - Significant Customers (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>047 - 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>048 - Disclosure - Employee Stock Ownership Plan (Details) - Schedule of ESOP Shares</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>049 - 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/ScheduleofWeightedAverageAssumptionsforOptionAwardsTable" id="esp_r_ScheduleofWeightedAverageAssumptionsforOptionAwardsTable">
        <link:definition>050 - Disclosure - Stock-Based Compensation (Details) - Schedule of Weighted Average Assumptions for Option Awards</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>051 - Disclosure - Stock-Based Compensation (Details) - Schedule of Stock Option Activity</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>052 - Disclosure - Stock-Based Compensation (Details) - Schedule of Changes in Non-Vested Stock Options</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/ConcentrationofCreditRiskDetails" id="esp_r_ConcentrationofCreditRiskDetails">
        <link:definition>053 - Disclosure - Concentration of Credit Risk (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>054 - 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/StockholdersEquityDetails" id="esp_r_StockholdersEquityDetails">
        <link:definition>055 - Disclosure - Stockholders' Equity (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/ScheduleofReservedCommonSharesforFutureIssuanceTable" id="esp_r_ScheduleofReservedCommonSharesforFutureIssuanceTable">
        <link:definition>056 - Disclosure - Stockholders' Equity (Details) - Schedule of Reserved Common Shares for Future Issuance</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/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable" id="esp_r_ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable">
        <link:definition>057 - Disclosure - Stockholders' Equity (Details) - Schedule of Reconciliation of the Numerators and Denominators of the Basic and Diluted Earnings Per Share Computations</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/LineofCreditDetails" id="esp_r_LineofCreditDetails">
        <link:definition>058 - Disclosure - Line of Credit (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/ScheduleofQuarterlyFinancialInformationTable" id="esp_r_ScheduleofQuarterlyFinancialInformationTable">
        <link:definition>059 - Disclosure - Quarterly Financial Information (Unaudited) (Details) - Schedule of Quarterly Financial Information</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/2023" schemaLocation="https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.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/2023" schemaLocation="https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/sic/2023" schemaLocation="https://xbrl.sec.gov/sic/2023/sic-2023.xsd"/>
  <xs:element name="ScheduleOfTheEstimatedUsefulLivesOfDepreciableAssetsAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfTheEstimatedUsefulLivesOfDepreciableAssetsAbstract"/>
  <xs:element name="ScheduleOfAvailableForSaleSecuritiesAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfAvailableForSaleSecuritiesAbstract"/>
  <xs:element name="ScheduleOfContractualMaturitiesAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfContractualMaturitiesAbstract"/>
  <xs:element name="ScheduleOfContractsInProcessAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfContractsInProcessAbstract"/>
  <xs:element name="ScheduleOfPropertyPlantAndEquipmentAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfPropertyPlantAndEquipmentAbstract"/>
  <xs:element name="ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract"/>
  <xs:element name="ScheduleOfEffectiveIncomeTaxRatesAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfEffectiveIncomeTaxRatesAbstract"/>
  <xs:element name="ScheduleOfDeferredTaxAssetsAndLiabilitiesAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfDeferredTaxAssetsAndLiabilitiesAbstract"/>
  <xs:element name="EmployeeStockOwnershipPlanAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_EmployeeStockOwnershipPlanAbstract"/>
  <xs:element name="ScheduleOfEsopSharesAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfEsopSharesAbstract"/>
  <xs:element name="ScheduleOfWeightedAverageAssumptionsForOptionAwardsAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfWeightedAverageAssumptionsForOptionAwardsAbstract"/>
  <xs:element name="ScheduleOfStockOptionActivityAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfStockOptionActivityAbstract"/>
  <xs:element name="ScheduleOfChangesInNonVestedStockOptionsAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfChangesInNonVestedStockOptionsAbstract"/>
  <xs:element name="ScheduleOfReservedCommonSharesForFutureIssuanceAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfReservedCommonSharesForFutureIssuanceAbstract"/>
  <xs:element name="ScheduleOfReconciliationOfTheNumeratorsAndDenominatorsOfTheBasicAndDilutedEarningsPerShareComputationsAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfReconciliationOfTheNumeratorsAndDenominatorsOfTheBasicAndDilutedEarningsPerShareComputationsAbstract"/>
  <xs:element name="ScheduleOfQuarterlyFinancialInformationAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfQuarterlyFinancialInformationAbstract"/>
  <xs:element name="UnlabeledAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract"/>
  <xs:element name="InventoriesAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_InventoriesAbstract"/>
  <xs:element name="UnlabeledAbstract0" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract0"/>
  <xs:element name="UnlabeledAbstract1" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract1"/>
  <xs:element name="UnlabeledAbstract2" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract2"/>
  <xs:element name="AccruedExpensesAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_AccruedExpensesAbstract"/>
  <xs:element name="UnlabeledAbstract3" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract3"/>
  <xs:element name="UnlabeledAbstract4" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract4"/>
  <xs:element name="UnlabeledAbstract5" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract5"/>
  <xs:element name="CommonStockParValue3313PerShareAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_CommonStockParValue3313PerShareAbstract"/>
  <xs:element name="UnlabeledAbstract6" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract6"/>
  <xs:element name="UnlabeledAbstract7" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract7"/>
  <xs:element name="UnlabeledAbstract8" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract8"/>
  <xs:element name="UnlabeledAbstract9" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract9"/>
  <xs:element name="UnlabeledAbstract10" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract10"/>
  <xs:element name="UnlabeledAbstract11" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract11"/>
  <xs:element name="UnlabeledAbstract12" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract12"/>
  <xs:element name="UnlabeledAbstract13" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract13"/>
  <xs:element name="UnlabeledAbstract14" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract14"/>
  <xs:element name="UnlabeledAbstract15" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract15"/>
  <xs:element name="UnlabeledAbstract16" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract16"/>
  <xs:element name="UnlabeledAbstract17" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract17"/>
  <xs:element name="UnlabeledAbstract18" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract18"/>
  <xs:element name="UnlabeledAbstract19" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract19"/>
  <xs:element name="CashFlowsFromFinancingActivitiesAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_CashFlowsFromFinancingActivitiesAbstract"/>
  <xs:element name="UnlabeledAbstract20" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract20"/>
  <xs:element name="UnlabeledAbstract21" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract21"/>
  <xs:element name="June302023Abstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_June302023Abstract"/>
  <xs:element name="UnlabeledAbstract22" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract22"/>
  <xs:element name="June302022Abstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_June302022Abstract"/>
  <xs:element name="IncreaseReductionInRateResultingFromAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_IncreaseReductionInRateResultingFromAbstract"/>
  <xs:element name="DeferredTaxAssetsAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_DeferredTaxAssetsAbstract"/>
  <xs:element name="UnlabeledAbstract23" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract23"/>
  <xs:element name="DeferredTaxLiabilityAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_DeferredTaxLiabilityAbstract"/>
  <xs:element name="UnlabeledAbstract24" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract24"/>
  <xs:element name="NumeratorAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_NumeratorAbstract"/>
  <xs:element name="UnlabeledAbstract25" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract25"/>
  <xs:element name="DenominatorAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_DenominatorAbstract"/>
  <xs:element name="UnlabeledAbstract26" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract26"/>
  <xs:element name="NetIncomePerShareAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_NetIncomePerShareAbstract"/>
  <xs:element name="UnlabeledAbstract27" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_UnlabeledAbstract27"/>
  <xs:element name="a2022Abstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_a2022Abstract"/>
  <xs:element name="NetIncomePerShareAbstract0" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_NetIncomePerShareAbstract0"/>
  <xs:element name="DeferredTaxLiability" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item" id="esp_DeferredTaxLiability"/>
  <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="IncreasedecreaseInPayrollAndOtherTaxesWithheld" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item" id="esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld"/>
  <xs:element name="PensionExpenseTextBlock" type="dtr:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_PensionExpenseTextBlock"/>
  <xs:element name="SignificantCustomersTextBlock" type="dtr:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_SignificantCustomersTextBlock"/>
  <xs:element name="EmployeeStockOwnershipPlanTextBlock" type="dtr:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_EmployeeStockOwnershipPlanTextBlock"/>
  <xs:element name="ContractLiabilitiesPolicyTextBlock" type="dtr:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ContractLiabilitiesPolicyTextBlock"/>
  <xs:element name="RecentlyIssuedAccountingStandardsPolicyTextBlock" type="dtr:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_RecentlyIssuedAccountingStandardsPolicyTextBlock"/>
  <xs:element name="ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock" type="dtr:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock"/>
  <xs:element name="ScheduleOfContractsInProcessTableTextBlock" type="dtr:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfContractsInProcessTableTextBlock"/>
  <xs:element name="EmployeeStockOwnershipPlanTablesTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_EmployeeStockOwnershipPlanTablesTable"/>
  <xs:element name="EmployeeStockOwnershipPlanTablesLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_EmployeeStockOwnershipPlanTablesLineItems"/>
  <xs:element name="StockBasedCompensationTablesTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_StockBasedCompensationTablesTable"/>
  <xs:element name="StockBasedCompensationTablesLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_StockBasedCompensationTablesLineItems"/>
  <xs:element name="ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock" type="dtr:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock"/>
  <xs:element name="SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable"/>
  <xs:element name="SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems"/>
  <xs:element name="InvestmentSecuritiesDetailsScheduleofContractualMaturitiesTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesTable"/>
  <xs:element name="InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems"/>
  <xs:element name="UnrecognizedGrossContractValue" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item" id="esp_UnrecognizedGrossContractValue"/>
  <xs:element name="DeferredIncomeTaxesExpenseBenefit" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item" id="esp_DeferredIncomeTaxesExpenseBenefit"/>
  <xs:element name="USFederalStatutoryIncomeTaxRate" type="dtr:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_USFederalStatutoryIncomeTaxRate"/>
  <xs:element name="EffectiveIncomeTaxRateReconciliationESOPFairValue" type="dtr:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_EffectiveIncomeTaxRateReconciliationESOPFairValue"/>
  <xs:element name="EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback" type="dtr:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback"/>
  <xs:element name="DeferredTaxAssetLiability" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item" id="esp_DeferredTaxAssetLiability"/>
  <xs:element name="StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsTable"/>
  <xs:element name="StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems"/>
  <xs:element name="StockBasedCompensationDetailsScheduleofStockOptionActivityTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityTable"/>
  <xs:element name="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems"/>
  <xs:element name="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm"/>
  <xs:element name="StockIssuedDuringPeriodSharesStockOptionExercised" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_StockIssuedDuringPeriodSharesStockOptionExercised"/>
  <xs:element name="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod"/>
  <xs:element name="StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsTable"/>
  <xs:element name="StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems"/>
  <xs:element name="StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceTable"/>
  <xs:element name="StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems"/>
  <xs:element name="StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable"/>
  <xs:element name="StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems"/>
  <xs:element name="QuarterlyFinancialInformationDomainDomain" type="dtr:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_QuarterlyFinancialInformationDomainDomain"/>
  <xs:element name="QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationTable"/>
  <xs:element name="QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems"/>
  <xs:element name="RevenueDetailsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_RevenueDetailsTable"/>
  <xs:element name="RevenueDetailsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_RevenueDetailsLineItems"/>
  <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="PropertyPlantandEquipmentDetailsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_PropertyPlantandEquipmentDetailsTable"/>
  <xs:element name="PropertyPlantandEquipmentDetailsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_PropertyPlantandEquipmentDetailsLineItems"/>
  <xs:element name="RevenueRecognitionMilestoneMethodRevenuesRecognized" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item" id="esp_RevenueRecognitionMilestoneMethodRevenuesRecognized"/>
  <xs:element name="DefinedContributionPlanEmployersMatchingContribution" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item" id="esp_DefinedContributionPlanEmployersMatchingContribution"/>
  <xs:element name="SignificantCustomersDetailsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_SignificantCustomersDetailsTable"/>
  <xs:element name="SignificantCustomersDetailsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_SignificantCustomersDetailsLineItems"/>
  <xs:element name="ConcentrationRiskPercentageOne" type="dtr:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ConcentrationRiskPercentageOne"/>
  <xs:element name="EmployeeStockOwnershipPlanDetailsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_EmployeeStockOwnershipPlanDetailsTable"/>
  <xs:element name="EmployeeStockOwnershipPlanDetailsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_EmployeeStockOwnershipPlanDetailsLineItems"/>
  <xs:element name="StockBasedCompensationDetailsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_StockBasedCompensationDetailsTable"/>
  <xs:element name="StockBasedCompensationDetailsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_StockBasedCompensationDetailsLineItems"/>
  <xs:element name="DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item" id="esp_DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts"/>
  <xs:element name="NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear" type="xbrli:sharesItemType" abstract="false" xbrli:periodType="instant" nillable="true" substitutionGroup="xbrli:item" id="esp_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear"/>
  <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="ConcentrationofCreditRiskDetailsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_ConcentrationofCreditRiskDetailsTable"/>
  <xs:element name="ConcentrationofCreditRiskDetailsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ConcentrationofCreditRiskDetailsLineItems"/>
  <xs:element name="ConcentrationRiskNumberOfCustomers" type="xbrli:integerItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ConcentrationRiskNumberOfCustomers"/>
  <xs:element name="CommitmentsandContingenciesDetailsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_CommitmentsandContingenciesDetailsTable"/>
  <xs:element name="CommitmentsandContingenciesDetailsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_CommitmentsandContingenciesDetailsLineItems"/>
  <xs:element name="LineofCreditDetailsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem" id="esp_LineofCreditDetailsTable"/>
  <xs:element name="LineofCreditDetailsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_LineofCreditDetailsLineItems"/>
  <xs:element name="QuarterlyFinancialInformationAxis" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:dimensionItem" id="esp_QuarterlyFinancialInformationAxis"/>
  <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="FirstQuarterMember" type="dtr:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_FirstQuarterMember"/>
  <xs:element name="FourthQuarterMember" type="dtr:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_FourthQuarterMember"/>
  <xs:element name="GeographicConcentrationRisk1Member" type="dtr:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_GeographicConcentrationRisk1Member"/>
  <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="LondonInterbankOfferedRatesLIBORMember" type="dtr:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_LondonInterbankOfferedRatesLIBORMember"/>
  <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="SecondQuarterMember" type="dtr:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_SecondQuarterMember"/>
  <xs:element name="ThirdQuarterMember" type="dtr:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_ThirdQuarterMember"/>
  <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="NatureOfOperationsAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_NatureOfOperationsAbstract"/>
  <xs:element name="SignificantCustomersAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item" id="esp_SignificantCustomersAbstract"/>
  <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>9
<FILENAME>esp-20230630_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: Thu Sep 21 14:52:04 UTC 2023 -->
<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-20230630.xsd#esp_r_ConsolidatedBalanceSheet" roleURI="http://espey.com/role/ConsolidatedBalanceSheet"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ConsolidatedIncomeStatement" roleURI="http://espey.com/role/ConsolidatedIncomeStatement"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ConsolidatedCashFlow" roleURI="http://espey.com/role/ConsolidatedCashFlow"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofComponentsoftheProvisionforIncomeTaxesTable" roleURI="http://espey.com/role/ScheduleofComponentsoftheProvisionforIncomeTaxesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofDeferredTaxAssetsandLiabilitiesTable" roleURI="http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofESOPSharesTable" roleURI="http://espey.com/role/ScheduleofESOPSharesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofReservedCommonSharesforFutureIssuanceTable" roleURI="http://espey.com/role/ScheduleofReservedCommonSharesforFutureIssuanceTable"/>
  <calculationLink xlink:type="extended" xlink:role="http://espey.com/role/ConsolidatedBalanceSheet">
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryRawMaterials" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_AvailableForSaleSecuritiesDebtSecurities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecurities" order="2" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxesReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxesReceivable"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_IncomeTaxesReceivable" order="4" 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="5" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountsPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_OtherEmployeeRelatedLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="4" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedPayrollTaxesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="5" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="6" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TaxesPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="7" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Liabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_DeferredTaxLiability" xlink:href="esp-20230630.xsd#esp_DeferredTaxLiability"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="esp_DeferredTaxLiability" order="2" weight="1"/>
    <loc xlink:type="locator" xlink:label="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock" xlink:href="esp-20230630.xsd#esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingencies"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock" xlink:to="us-gaap_CommitmentsAndContingencies" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="2" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="3" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="4" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="5" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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-20230630.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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"/>
    <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="2" weight="1"/>
  </calculationLink>
  <calculationLink xlink:type="extended" xlink:role="http://espey.com/role/ConsolidatedIncomeStatement">
    <loc xlink:type="locator" xlink:label="us-gaap_GrossProfit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Revenues" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.xsd#us-gaap_NonoperatingIncomeExpense"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentIncomeInterestAndDividend" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentIncomeInterestAndDividend"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_InvestmentIncomeInterestAndDividend" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherNonoperatingIncome" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_IncomeLossAttributableToParent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossAttributableToParent"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossAttributableToParent" xlink:to="us-gaap_OperatingIncomeLoss" order="1" weight="1"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossAttributableToParent" xlink:to="us-gaap_NonoperatingIncomeExpense" order="2" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeLossAttributableToParent" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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"/>
<!-- [WMV5][XcpuxYn59dz7vgYynUDuwG7r97K2jUTysl7vcz0lJt/tSeJz73kx1cLt0ZFF2SK/vxBCY0vdSrYnt/FcukLonGvrL5wMA+ofwaqo4qMNOuQCZ4f5MsVOmOOAhEIki8WPj8IecsZEAIH93EFFuU1YNbJ9bq3A8pyccr+4dZb24XmdvHCn85JsH7H0AtPOV2WmLkVDPf9RD329k5Bn5/FaLlBT8+9s8oe2tmloh3coIpwefdJI6BJX3jveRxOVHXUzNWLk9gC5sWj3tAbMPZ/pRB2wQyWjQC00wuCC+pns/FJxxl+BDdpjRQ==] CSR-->
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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:type="extended" xlink:role="http://espey.com/role/ConsolidatedCashFlow">
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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-20230630.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="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="9" weight="1"/>
    <loc xlink:type="locator" xlink:label="esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld" xlink:href="esp-20230630.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="10" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="11" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="12" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_GainLossOnDispositionOfAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnDispositionOfAssets"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_GainLossOnDispositionOfAssets" order="13" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="14" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="15" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="16" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="17" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ProceedsFromSaleOfOtherProductiveAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleOfOtherProductiveAssets"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_ProceedsFromSaleOfOtherProductiveAssets" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="2" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="3" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PaymentsToAcquireInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="4" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PaymentsOfDividendsCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="1" weight="-1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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:type="extended" xlink:role="http://espey.com/role/ScheduleofComponentsoftheProvisionforIncomeTaxesTable">
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CurrentFederalTaxExpenseBenefit"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentFederalTaxExpenseBenefit" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" order="2" weight="1"/>
    <loc xlink:type="locator" xlink:label="esp_DeferredIncomeTaxesExpenseBenefit" xlink:href="esp-20230630.xsd#esp_DeferredIncomeTaxesExpenseBenefit"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="esp_DeferredIncomeTaxesExpenseBenefit" order="3" weight="1"/>
  </calculationLink>
  <calculationLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable">
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsGross" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsGross" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsGross" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther" order="2" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsGross" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" order="3" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredIncomeTaxLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredIncomeTaxLiabilities" xlink:to="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredIncomeTaxLiabilities" xlink:to="us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts" order="2" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxLiabilitiesPrepaidExpenses"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredIncomeTaxLiabilities" xlink:to="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" order="3" weight="1"/>
    <loc xlink:type="locator" xlink:label="esp_DeferredTaxAssetLiability" xlink:href="esp-20230630.xsd#esp_DeferredTaxAssetLiability"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="esp_DeferredTaxAssetLiability" xlink:to="us-gaap_DeferredTaxAssetsGross" order="1" weight="1"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="esp_DeferredTaxAssetLiability" xlink:to="us-gaap_DeferredIncomeTaxLiabilities" order="2" weight="-1"/>
  </calculationLink>
  <calculationLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofESOPSharesTable">
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="2" weight="1"/>
  </calculationLink>
  <calculationLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofReservedCommonSharesforFutureIssuanceTable">
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" order="1" weight="1"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" order="2" weight="1"/>
  </calculationLink>
</linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>10
<FILENAME>esp-20230630_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: Thu Sep 21 14:52:04 UTC 2023 -->
<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-20230630.xsd#esp_r_ConsolidatedBalanceSheet" roleURI="http://espey.com/role/ConsolidatedBalanceSheet"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ConsolidatedBalanceSheet_Parentheticals" roleURI="http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ConsolidatedIncomeStatement" roleURI="http://espey.com/role/ConsolidatedIncomeStatement"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ShareholdersEquityType2or3" roleURI="http://espey.com/role/ShareholdersEquityType2or3"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ShareholdersEquityType2or3_Parentheticals" roleURI="http://espey.com/role/ShareholdersEquityType2or3_Parentheticals"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ConsolidatedCashFlow" roleURI="http://espey.com/role/ConsolidatedCashFlow"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_NatureofOperations" roleURI="http://espey.com/role/NatureofOperations"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_SummaryofSignificantAccountingPolicies" roleURI="http://espey.com/role/SummaryofSignificantAccountingPolicies"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_Revenue" roleURI="http://espey.com/role/Revenue"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_InvestmentSecurities" roleURI="http://espey.com/role/InvestmentSecurities"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ContractsinProcess" roleURI="http://espey.com/role/ContractsinProcess"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_PropertyPlantandEquipment" roleURI="http://espey.com/role/PropertyPlantandEquipment"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_PensionExpense" roleURI="http://espey.com/role/PensionExpense"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ProvisionforIncomeTaxes" roleURI="http://espey.com/role/ProvisionforIncomeTaxes"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_SignificantCustomers" roleURI="http://espey.com/role/SignificantCustomers"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_EmployeeStockOwnershipPlan" roleURI="http://espey.com/role/EmployeeStockOwnershipPlan"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_StockBasedCompensation" roleURI="http://espey.com/role/StockBasedCompensation"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ConcentrationofCreditRisk" roleURI="http://espey.com/role/ConcentrationofCreditRisk"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_RelatedParties" roleURI="http://espey.com/role/RelatedParties"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_CommitmentsandContingencies" roleURI="http://espey.com/role/CommitmentsandContingencies"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_StockholdersEquity" roleURI="http://espey.com/role/StockholdersEquity"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_LineofCredit" roleURI="http://espey.com/role/LineofCredit"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_QuarterlyFinancialInformationUnaudited" roleURI="http://espey.com/role/QuarterlyFinancialInformationUnaudited"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_AccountingPoliciesByPolicy" roleURI="http://espey.com/role/AccountingPoliciesByPolicy"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_SummaryofSignificantAccountingPoliciesTables" roleURI="http://espey.com/role/SummaryofSignificantAccountingPoliciesTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_InvestmentSecuritiesTables" roleURI="http://espey.com/role/InvestmentSecuritiesTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ContractsinProcessTables" roleURI="http://espey.com/role/ContractsinProcessTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_PropertyPlantandEquipmentTables" roleURI="http://espey.com/role/PropertyPlantandEquipmentTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ProvisionforIncomeTaxesTables" roleURI="http://espey.com/role/ProvisionforIncomeTaxesTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_EmployeeStockOwnershipPlanTables" roleURI="http://espey.com/role/EmployeeStockOwnershipPlanTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_StockBasedCompensationTables" roleURI="http://espey.com/role/StockBasedCompensationTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_StockholdersEquityTables" roleURI="http://espey.com/role/StockholdersEquityTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_QuarterlyFinancialInformationUnauditedTables" roleURI="http://espey.com/role/QuarterlyFinancialInformationUnauditedTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable" roleURI="http://espey.com/role/ScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofAvailableforSaleSecuritiesTable" roleURI="http://espey.com/role/ScheduleofAvailableforSaleSecuritiesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofContractualMaturitiesTable" roleURI="http://espey.com/role/ScheduleofContractualMaturitiesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofContractsinProcessTable" roleURI="http://espey.com/role/ScheduleofContractsinProcessTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofPropertyPlantandEquipmentTable" roleURI="http://espey.com/role/ScheduleofPropertyPlantandEquipmentTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofComponentsoftheProvisionforIncomeTaxesTable" roleURI="http://espey.com/role/ScheduleofComponentsoftheProvisionforIncomeTaxesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofEffectiveIncomeTaxRatesTable" roleURI="http://espey.com/role/ScheduleofEffectiveIncomeTaxRatesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofDeferredTaxAssetsandLiabilitiesTable" roleURI="http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofESOPSharesTable" roleURI="http://espey.com/role/ScheduleofESOPSharesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofWeightedAverageAssumptionsforOptionAwardsTable" roleURI="http://espey.com/role/ScheduleofWeightedAverageAssumptionsforOptionAwardsTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofStockOptionActivityTable" roleURI="http://espey.com/role/ScheduleofStockOptionActivityTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofChangesinNonVestedStockOptionsTable" roleURI="http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofReservedCommonSharesforFutureIssuanceTable" roleURI="http://espey.com/role/ScheduleofReservedCommonSharesforFutureIssuanceTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable" roleURI="http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofQuarterlyFinancialInformationTable" roleURI="http://espey.com/role/ScheduleofQuarterlyFinancialInformationTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_SummaryofSignificantAccountingPoliciesDetails" roleURI="http://espey.com/role/SummaryofSignificantAccountingPoliciesDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_RevenueDetails" roleURI="http://espey.com/role/RevenueDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_PropertyPlantandEquipmentDetails" roleURI="http://espey.com/role/PropertyPlantandEquipmentDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_PensionExpenseDetails" roleURI="http://espey.com/role/PensionExpenseDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_SignificantCustomersDetails" roleURI="http://espey.com/role/SignificantCustomersDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_EmployeeStockOwnershipPlanDetails" roleURI="http://espey.com/role/EmployeeStockOwnershipPlanDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_StockBasedCompensationDetails" roleURI="http://espey.com/role/StockBasedCompensationDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ConcentrationofCreditRiskDetails" roleURI="http://espey.com/role/ConcentrationofCreditRiskDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_CommitmentsandContingenciesDetails" roleURI="http://espey.com/role/CommitmentsandContingenciesDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_StockholdersEquityDetails" roleURI="http://espey.com/role/StockholdersEquityDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_LineofCreditDetails" roleURI="http://espey.com/role/LineofCreditDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#DocumentAndEntityInformation" roleURI="http://espey.com/role/DocumentAndEntityInformation"/>
  <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:type="extended" xlink:role="http://espey.com/role/ConsolidatedBalanceSheet">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AssetsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_AssetsAbstract" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecurities" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AccountsReceivableNetCurrent" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxesReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxesReceivable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_IncomeTaxesReceivable" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_InventoriesAbstract" xlink:href="esp-20230630.xsd#esp_InventoriesAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsAbstract" xlink:to="esp_InventoriesAbstract" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryRawMaterials" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterials"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_InventoriesAbstract" xlink:to="us-gaap_InventoryRawMaterials" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryWorkInProcess" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryWorkInProcess"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_InventoriesAbstract" xlink:to="us-gaap_InventoryWorkInProcess" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryForLongTermContractsOrPrograms" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryForLongTermContractsOrPrograms"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_InventoriesAbstract" xlink:to="us-gaap_InventoryForLongTermContractsOrPrograms" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_InventoryForLongTermContractsOrPrograms" xlink:to="us-gaap_InventoryNet" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="us-gaap_AssetsCurrent" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Assets" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_Assets" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountsPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_AccountsPayableCurrent" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_AccruedExpensesAbstract" xlink:href="esp-20230630.xsd#esp_AccruedExpensesAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="esp_AccruedExpensesAbstract" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedSalariesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedSalariesCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_AccruedExpensesAbstract" xlink:to="us-gaap_AccruedSalariesCurrent" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedVacationCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedVacationCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_AccruedExpensesAbstract" xlink:to="us-gaap_AccruedVacationCurrent" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherEmployeeRelatedLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherEmployeeRelatedLiabilitiesCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_AccruedExpensesAbstract" xlink:to="us-gaap_OtherEmployeeRelatedLiabilitiesCurrent" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedPayrollTaxesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedPayrollTaxesCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_AccruedPayrollTaxesCurrent" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TaxesPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TaxesPayableCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_TaxesPayableCurrent" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TaxesPayableCurrent" xlink:to="us-gaap_LiabilitiesCurrent" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_DeferredTaxLiability" xlink:href="esp-20230630.xsd#esp_DeferredTaxLiability"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="esp_DeferredTaxLiability" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Liabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_DeferredTaxLiability" xlink:to="us-gaap_Liabilities" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingencies"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_CommitmentsAndContingencies" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_CommonStockValue" order="7" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_AdditionalPaidInCapitalCommonStock" order="8" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" order="9" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" order="10" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock" xlink:href="esp-20230630.xsd#esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock" order="11" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_UnearnedEsopSharesCost" xlink:href="esp-20230630.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="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TreasuryStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_UnearnedEsopSharesCost" xlink:to="us-gaap_TreasuryStockValue" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TreasuryStockValue" xlink:to="us-gaap_StockholdersEquity" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TreasuryStockValue" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity" order="1" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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:type="extended" xlink:role="http://espey.com/role/ConsolidatedIncomeStatement">
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeStatementAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Revenues" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfRevenue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_Revenues" xlink:to="us-gaap_CostOfRevenue" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_GrossProfit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CostOfRevenue" xlink:to="us-gaap_GrossProfit" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OperatingIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:to="us-gaap_OperatingIncomeLoss" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherIncomeAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherIncomeAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_OtherIncomeAbstract" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentIncomeInterestAndDividend" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentIncomeInterestAndDividend"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherIncomeAbstract" xlink:to="us-gaap_InvestmentIncomeInterestAndDividend" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherNonoperatingIncome" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncome"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherIncomeAbstract" xlink:to="us-gaap_OtherNonoperatingIncome" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NonoperatingIncomeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonoperatingIncomeExpense"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherNonoperatingIncome" xlink:to="us-gaap_NonoperatingIncomeExpense" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeLossAttributableToParent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossAttributableToParent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeLossAttributableToParent" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_EarningsPerShareAbstract" order="7" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareBasic" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" order="8" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" order="1" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ShareholdersEquityType2or3">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EquityComponentDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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-20230630.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_StockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_CommonStockSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="us-gaap_NetIncomeLoss" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationGross" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationGross"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationGross" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DividendsCommonStockCash" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DividendsCommonStockCash"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="us-gaap_DividendsCommonStockCash" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="us-gaap_StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan" order="5" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ShareholdersEquityType2or3_Parentheticals">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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:type="extended" xlink:role="http://espey.com/role/ConsolidatedCashFlow">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfCashFlowsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetIncomeLoss" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensation" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ShareBasedCompensation" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Depreciation" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Depreciation"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_Depreciation" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_GainLossOnDispositionOfAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnDispositionOfAssets"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_GainLossOnDispositionOfAssets" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInInventories" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccruedSalaries" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccruedSalaries"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccruedSalaries" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_IncreaseDecreaseInVacationAccrual" xlink:href="esp-20230630.xsd#esp_IncreaseDecreaseInVacationAccrual"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="esp_IncreaseDecreaseInVacationAccrual" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherAccruedLiabilities"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" order="7" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld" xlink:href="esp-20230630.xsd#esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld" order="8" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" order="9" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" order="10" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ProceedsFromSaleOfOtherProductiveAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleOfOtherProductiveAssets"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromSaleOfOtherProductiveAssets" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PaymentsToAcquireInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireInvestments"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquireInvestments" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_CashFlowsFromFinancingActivitiesAbstract" xlink:href="esp-20230630.xsd#esp_CashFlowsFromFinancingActivitiesAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="esp_CashFlowsFromFinancingActivitiesAbstract" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PaymentsOfDividendsCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsOfDividendsCommonStock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_CashFlowsFromFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsOfDividendsCommonStock" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PaymentsOfDividendsCommonStock" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SupplementalCashFlowInformationAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract" order="7" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxesPaid" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxesPaid"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_IncomeTaxesPaid" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/NatureofOperations">
    <loc xlink:type="locator" xlink:label="esp_NatureOfOperationsAbstract" xlink:href="esp-20230630.xsd#esp_NatureOfOperationsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NatureOfOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NatureOfOperations"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_NatureOfOperationsAbstract" xlink:to="us-gaap_NatureOfOperations" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/SummaryofSignificantAccountingPolicies">
    <loc xlink:type="locator" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SignificantAccountingPoliciesTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/Revenue">
    <loc xlink:type="locator" xlink:label="us-gaap_RevenuesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenuesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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:type="extended" xlink:role="http://espey.com/role/InvestmentSecurities">
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:to="us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ContractsinProcess">
    <loc xlink:type="locator" xlink:label="us-gaap_ContractorsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractorsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LongTermContractsOrProgramsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermContractsOrProgramsDisclosureTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ContractorsAbstract" xlink:to="us-gaap_LongTermContractsOrProgramsDisclosureTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/PropertyPlantandEquipment">
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/PensionExpense">
    <loc xlink:type="locator" xlink:label="us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="esp_PensionExpenseTextBlock" xlink:href="esp-20230630.xsd#esp_PensionExpenseTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:to="esp_PensionExpenseTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ProvisionforIncomeTaxes">
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/SignificantCustomers">
    <loc xlink:type="locator" xlink:label="esp_SignificantCustomersAbstract" xlink:href="esp-20230630.xsd#esp_SignificantCustomersAbstract"/>
    <loc xlink:type="locator" xlink:label="esp_SignificantCustomersTextBlock" xlink:href="esp-20230630.xsd#esp_SignificantCustomersTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_SignificantCustomersAbstract" xlink:to="esp_SignificantCustomersTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/EmployeeStockOwnershipPlan">
    <loc xlink:type="locator" xlink:label="esp_EmployeeStockOwnershipPlanAbstract" xlink:href="esp-20230630.xsd#esp_EmployeeStockOwnershipPlanAbstract"/>
    <loc xlink:type="locator" xlink:label="esp_EmployeeStockOwnershipPlanTextBlock" xlink:href="esp-20230630.xsd#esp_EmployeeStockOwnershipPlanTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_EmployeeStockOwnershipPlanAbstract" xlink:to="esp_EmployeeStockOwnershipPlanTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/StockBasedCompensation">
    <loc xlink:type="locator" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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:type="extended" xlink:role="http://espey.com/role/ConcentrationofCreditRisk">
    <loc xlink:type="locator" xlink:label="us-gaap_RisksAndUncertaintiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RisksAndUncertaintiesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RisksAndUncertaintiesAbstract" xlink:to="us-gaap_ConcentrationRiskDisclosureTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/RelatedParties">
    <loc xlink:type="locator" xlink:label="us-gaap_RelatedPartyTransactionsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RelatedPartyTransactionsAbstract" xlink:to="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/CommitmentsandContingencies">
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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:type="extended" xlink:role="http://espey.com/role/StockholdersEquity">
    <loc xlink:type="locator" xlink:label="us-gaap_StockholdersEquityNoteAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityNoteAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="us-gaap_StockholdersEquityNoteDisclosureTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/LineofCredit">
    <loc xlink:type="locator" xlink:label="us-gaap_DebtDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_DebtDisclosureTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/QuarterlyFinancialInformationUnaudited">
    <loc xlink:type="locator" xlink:label="us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_QuarterlyFinancialInformationDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_QuarterlyFinancialInformationTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_QuarterlyFinancialInformationTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:to="us-gaap_QuarterlyFinancialInformationTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/AccountingPoliciesByPolicy">
    <loc xlink:type="locator" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RevenueRecognitionPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRecognitionPolicyTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_RevenueRecognitionPolicyTextBlock" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryPolicyTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_InventoryPolicyTextBlock" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_ContractLiabilitiesPolicyTextBlock" xlink:href="esp-20230630.xsd#esp_ContractLiabilitiesPolicyTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="esp_ContractLiabilitiesPolicyTextBlock" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxPolicyTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_IncomeTaxPolicyTextBlock" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_CashAndCashEquivalentsPolicyTextBlock" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentPolicyTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_InvestmentPolicyTextBlock" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_FairValueOfFinancialInstrumentsPolicy" order="7" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TradeAndOtherAccountsReceivablePolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TradeAndOtherAccountsReceivablePolicy"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_TradeAndOtherAccountsReceivablePolicy" order="8" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerSharePolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerSharePolicyTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_EarningsPerSharePolicyTextBlock" order="9" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomePolicyPolicyTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" order="10" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_UseOfEstimates" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UseOfEstimates"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_UseOfEstimates" order="11" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_RecentlyIssuedAccountingStandardsPolicyTextBlock" xlink:href="esp-20230630.xsd#esp_RecentlyIssuedAccountingStandardsPolicyTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="esp_RecentlyIssuedAccountingStandardsPolicyTextBlock" order="12" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" order="13" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" order="14" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskCreditRisk" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskCreditRisk"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ConcentrationRiskCreditRisk" order="15" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/SummaryofSignificantAccountingPoliciesTables">
    <loc xlink:type="locator" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock" xlink:href="esp-20230630.xsd#esp_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="esp_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/InvestmentSecuritiesTables">
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" 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/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:to="us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" order="1" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ContractsinProcessTables">
    <loc xlink:type="locator" xlink:label="us-gaap_ContractorsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractorsAbstract"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfContractsInProcessTableTextBlock" xlink:href="esp-20230630.xsd#esp_ScheduleOfContractsInProcessTableTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ContractorsAbstract" xlink:to="esp_ScheduleOfContractsInProcessTableTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/PropertyPlantandEquipmentTables">
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ProvisionforIncomeTaxesTables">
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" order="2" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/EmployeeStockOwnershipPlanTables">
    <loc xlink:type="locator" xlink:label="esp_EmployeeStockOwnershipPlanTablesLineItems" xlink:href="esp-20230630.xsd#esp_EmployeeStockOwnershipPlanTablesLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_EmployeeStockOwnershipPlanTablesTable" xlink:href="esp-20230630.xsd#esp_EmployeeStockOwnershipPlanTablesTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="esp_EmployeeStockOwnershipPlanTablesLineItems" xlink:to="esp_EmployeeStockOwnershipPlanTablesTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_EmployeeStockOwnershipPlanTablesLineItems" xlink:to="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock" order="1" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/StockBasedCompensationTables">
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationTablesLineItems" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationTablesLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationTablesTable" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationTablesTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="esp_StockBasedCompensationTablesLineItems" xlink:to="esp_StockBasedCompensationTablesTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationTablesLineItems" xlink:to="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationTablesLineItems" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationTablesLineItems" xlink:to="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock" order="3" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/StockholdersEquityTables">
    <loc xlink:type="locator" xlink:label="us-gaap_StockholdersEquityNoteAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityNoteAbstract"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock" xlink:href="esp-20230630.xsd#esp_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="esp_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" order="1" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/QuarterlyFinancialInformationUnauditedTables">
    <loc xlink:type="locator" xlink:label="us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_QuarterlyFinancialInformationDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:to="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable">
    <loc xlink:type="locator" xlink:label="esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems" xlink:href="esp-20230630.xsd#esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable" xlink:href="esp-20230630.xsd#esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems" xlink:to="esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain_0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_RangeAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable" xlink:to="srt_RangeAxis" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_RangeMember" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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/2023/elts/srt-2023.xsd#srt_RangeMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_MinimumMember" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_MaximumMember" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_BuildingAndBuildingImprovementsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingAndBuildingImprovementsMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_BuildingAndBuildingImprovementsMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_MachineryAndEquipmentMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MachineryAndEquipmentMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_MachineryAndEquipmentMember" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FurnitureAndFixturesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_FurnitureAndFixturesMember" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentUsefulLife" order="1" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofAvailableforSaleSecuritiesTable">
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" 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/2023/elts/us-gaap-2023.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="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecurities" order="4" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofContractualMaturitiesTable">
    <loc xlink:type="locator" xlink:label="esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems" xlink:href="esp-20230630.xsd#esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesTable" xlink:href="esp-20230630.xsd#esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems" xlink:to="esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_StatementScenarioAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementScenarioAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesTable" xlink:to="srt_StatementScenarioAxis" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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/2023/elts/srt-2023.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/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" order="3" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofContractsinProcessTable">
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfContractsInProcessAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfContractsInProcessAbstract"/>
    <loc xlink:type="locator" xlink:label="esp_UnrecognizedGrossContractValue" xlink:href="esp-20230630.xsd#esp_UnrecognizedGrossContractValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfContractsInProcessAbstract" xlink:to="esp_UnrecognizedGrossContractValue" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryForLongTermContractsOrPrograms" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryForLongTermContractsOrPrograms"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfContractsInProcessAbstract" xlink:to="us-gaap_InventoryForLongTermContractsOrPrograms" order="1" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofPropertyPlantandEquipmentTable">
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain_0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LandMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LandMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_LandMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_BuildingImprovementsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingImprovementsMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_BuildingImprovementsMember" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_MachineryAndEquipmentMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MachineryAndEquipmentMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_MachineryAndEquipmentMember" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FurnitureAndFixturesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_FurnitureAndFixturesMember" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentGross" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" order="3" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofComponentsoftheProvisionforIncomeTaxesTable">
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CurrentFederalTaxExpenseBenefit"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract" xlink:to="us-gaap_CurrentFederalTaxExpenseBenefit" order="0" xbrldt:closed="true"/>
<!-- [WMV5][XcpuxYn59dz7vgYynUDuwG7r97K2jUTysl7vcz0lJt/tSeJz73kx1cLt0ZFF2SK/vxBCY0vdSrYnt/FcukLonGvrL5wMA+ofwaqo4qMNOuQCZ4f5MsVOmOOAhEIki8WPj8IecsZEAIH93EFFuU1YNbJ9bq3A8pyccr+4dZb24XmdvHCn85JsH7H0AtPOV2WmLkVDPf9RD329k5Bn5/FaLlBT8+9s8oe2tmloh3coIpwefdJI6BJX3jveRxOVHXUzNWLk9gC5sWj3tAbMPZ/pROLhTd51IcZzembER5tRj+266sHbMW8fFg==] CSR-->
    <loc xlink:type="locator" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract" xlink:to="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_DeferredIncomeTaxesExpenseBenefit" xlink:href="esp-20230630.xsd#esp_DeferredIncomeTaxesExpenseBenefit"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract" xlink:to="esp_DeferredIncomeTaxesExpenseBenefit" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit" order="3" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofEffectiveIncomeTaxRatesTable">
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfEffectiveIncomeTaxRatesAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfEffectiveIncomeTaxRatesAbstract"/>
    <loc xlink:type="locator" xlink:label="esp_USFederalStatutoryIncomeTaxRate" xlink:href="esp-20230630.xsd#esp_USFederalStatutoryIncomeTaxRate"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfEffectiveIncomeTaxRatesAbstract" xlink:to="esp_USFederalStatutoryIncomeTaxRate" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_IncreaseReductionInRateResultingFromAbstract" xlink:href="esp-20230630.xsd#esp_IncreaseReductionInRateResultingFromAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfEffectiveIncomeTaxRatesAbstract" xlink:to="esp_IncreaseReductionInRateResultingFromAbstract" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_IncreaseReductionInRateResultingFromAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_EffectiveIncomeTaxRateReconciliationESOPFairValue" xlink:href="esp-20230630.xsd#esp_EffectiveIncomeTaxRateReconciliationESOPFairValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_IncreaseReductionInRateResultingFromAbstract" xlink:to="esp_EffectiveIncomeTaxRateReconciliationESOPFairValue" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_IncreaseReductionInRateResultingFromAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_IncreaseReductionInRateResultingFromAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback" xlink:href="esp-20230630.xsd#esp_EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_IncreaseReductionInRateResultingFromAbstract" xlink:to="esp_EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_IncreaseReductionInRateResultingFromAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfEffectiveIncomeTaxRatesAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations" order="2" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable">
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfDeferredTaxAssetsAndLiabilitiesAbstract"/>
    <loc xlink:type="locator" xlink:label="esp_DeferredTaxAssetsAbstract" xlink:href="esp-20230630.xsd#esp_DeferredTaxAssetsAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:to="esp_DeferredTaxAssetsAbstract" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_DeferredTaxAssetsAbstract" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_DeferredTaxAssetsAbstract" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_DeferredTaxAssetsAbstract" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsGross" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_DeferredTaxAssetsAbstract" xlink:to="us-gaap_DeferredTaxAssetsGross" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_DeferredTaxLiabilityAbstract" xlink:href="esp-20230630.xsd#esp_DeferredTaxLiabilityAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:to="esp_DeferredTaxLiabilityAbstract" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_DeferredTaxLiabilityAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_DeferredTaxLiabilityAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxLiabilitiesPrepaidExpenses"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_DeferredTaxLiabilityAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredIncomeTaxLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_DeferredTaxLiabilityAbstract" xlink:to="us-gaap_DeferredIncomeTaxLiabilities" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_DeferredTaxAssetLiability" xlink:href="esp-20230630.xsd#esp_DeferredTaxAssetLiability"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ScheduleOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:to="esp_DeferredTaxAssetLiability" order="2" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofESOPSharesTable">
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:to="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_StatementScenarioAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementScenarioAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTable" xlink:to="srt_StatementScenarioAxis" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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/2023/elts/srt-2023.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_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue" order="4" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofWeightedAverageAssumptionsforOptionAwardsTable">
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsTable" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems" xlink:to="esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_StatementScenarioAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementScenarioAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsTable" xlink:to="srt_StatementScenarioAxis" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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/2023/elts/srt-2023.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" order="5" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofStockOptionActivityTable">
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityTable" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsScheduleofStockOptionActivityTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_StatementScenarioAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementScenarioAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityTable" xlink:to="srt_StatementScenarioAxis" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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/2023/elts/srt-2023.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm" xlink:href="esp-20230630.xsd#esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" order="8" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_StockIssuedDuringPeriodSharesStockOptionExercised" xlink:href="esp-20230630.xsd#esp_StockIssuedDuringPeriodSharesStockOptionExercised"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="esp_StockIssuedDuringPeriodSharesStockOptionExercised" order="9" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" order="11" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod" xlink:href="esp-20230630.xsd#esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod" order="12" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" order="13" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" order="14" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" order="15" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" order="16" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" order="17" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" order="18" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" order="19" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" order="20" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2" order="21" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue" order="22" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable">
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsTable" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" xlink:to="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_StatementScenarioAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementScenarioAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsTable" xlink:to="srt_StatementScenarioAxis" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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/2023/elts/srt-2023.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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares" order="7" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" order="8" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofReservedCommonSharesforFutureIssuanceTable">
    <loc xlink:type="locator" xlink:label="esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems" xlink:href="esp-20230630.xsd#esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceTable" xlink:href="esp-20230630.xsd#esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems" xlink:to="esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_StatementScenarioAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementScenarioAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceTable" xlink:to="srt_StatementScenarioAxis" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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/2023/elts/srt-2023.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" order="3" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable">
    <loc xlink:type="locator" xlink:label="esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems" xlink:href="esp-20230630.xsd#esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable" xlink:href="esp-20230630.xsd#esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems" xlink:to="esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_StatementScenarioAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementScenarioAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable" xlink:to="srt_StatementScenarioAxis" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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/2023/elts/srt-2023.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_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems" xlink:to="us-gaap_NetIncomeLoss" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareBasicAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasicAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems" xlink:to="us-gaap_EarningsPerShareBasicAbstract" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ExcessStockSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ExcessStockSharesOutstanding"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EarningsPerShareBasicAbstract" xlink:to="us-gaap_ExcessStockSharesOutstanding" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EarningsPerShareBasicAbstract" xlink:to="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EarningsPerShareBasicAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesIssuedBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesIssuedBasic"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EarningsPerShareBasicAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesIssuedBasic" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EarningsPerShareBasicAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesContingentlyIssuable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesContingentlyIssuable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EarningsPerShareBasicAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesContingentlyIssuable" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EarningsPerShareBasicAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareDilutedAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDilutedAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems" xlink:to="us-gaap_EarningsPerShareDilutedAbstract" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EarningsPerShareDilutedAbstract" xlink:to="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EarningsPerShareDilutedAbstract" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EarningsPerShareDilutedAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" order="2" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofQuarterlyFinancialInformationTable">
    <loc xlink:type="locator" xlink:label="esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems" xlink:href="esp-20230630.xsd#esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationTable" xlink:href="esp-20230630.xsd#esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems" xlink:to="esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_QuarterlyFinancialInformationAxis" xlink:href="esp-20230630.xsd#esp_QuarterlyFinancialInformationAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationTable" xlink:to="esp_QuarterlyFinancialInformationAxis" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_QuarterlyFinancialInformationDomainDomain" xlink:href="esp-20230630.xsd#esp_QuarterlyFinancialInformationDomainDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="esp_QuarterlyFinancialInformationAxis" xlink:to="esp_QuarterlyFinancialInformationDomainDomain" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_QuarterlyFinancialInformationDomainDomain_0" xlink:href="esp-20230630.xsd#esp_QuarterlyFinancialInformationDomainDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="esp_QuarterlyFinancialInformationAxis" xlink:to="esp_QuarterlyFinancialInformationDomainDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_FirstQuarterMember" xlink:href="esp-20230630.xsd#esp_FirstQuarterMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_QuarterlyFinancialInformationDomainDomain" xlink:to="esp_FirstQuarterMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_SecondQuarterMember" xlink:href="esp-20230630.xsd#esp_SecondQuarterMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_QuarterlyFinancialInformationDomainDomain" xlink:to="esp_SecondQuarterMember" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_ThirdQuarterMember" xlink:href="esp-20230630.xsd#esp_ThirdQuarterMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_QuarterlyFinancialInformationDomainDomain" xlink:to="esp_ThirdQuarterMember" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_FourthQuarterMember" xlink:href="esp-20230630.xsd#esp_FourthQuarterMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_QuarterlyFinancialInformationDomainDomain" xlink:to="esp_FourthQuarterMember" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Revenues" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Revenues"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems" xlink:to="us-gaap_Revenues" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_GrossProfit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems" xlink:to="us-gaap_GrossProfit" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems" xlink:to="us-gaap_NetIncomeLoss" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_NetIncomePerShareAbstract" xlink:href="esp-20230630.xsd#esp_NetIncomePerShareAbstract"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems" xlink:to="esp_NetIncomePerShareAbstract" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_NetIncomePerShareAbstract" xlink:to="us-gaap_EarningsPerShareBasic" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_NetIncomePerShareAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" order="1" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/SummaryofSignificantAccountingPoliciesDetails">
    <loc xlink:type="locator" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" order="0" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/RevenueDetails">
    <loc xlink:type="locator" xlink:label="esp_RevenueDetailsLineItems" xlink:href="esp-20230630.xsd#esp_RevenueDetailsLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_RevenueDetailsTable" xlink:href="esp-20230630.xsd#esp_RevenueDetailsTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="esp_RevenueDetailsLineItems" xlink:to="esp_RevenueDetailsTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_StatementScenarioAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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/2023/elts/srt-2023.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/2023/elts/us-gaap-2023.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="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TypeOfAdoptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_OrderOrProductionBacklogMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="esp_UnitsDeliveredMember" xlink:href="esp-20230630.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-20230630.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-20230630.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_Revenues" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Revenues"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_RevenueDetailsLineItems" xlink:to="us-gaap_Revenues" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ContractWithCustomerLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiability"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_RevenueDetailsLineItems" xlink:to="us-gaap_ContractWithCustomerLiability" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_RevenueDetailsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_BacklogPercentageOfRecognitionsYearOne" xlink:href="esp-20230630.xsd#esp_BacklogPercentageOfRecognitionsYearOne"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_RevenueDetailsLineItems" xlink:to="esp_BacklogPercentageOfRecognitionsYearOne" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_BacklogPercentageOfRecognitionsYearTwo" xlink:href="esp-20230630.xsd#esp_BacklogPercentageOfRecognitionsYearTwo"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_RevenueDetailsLineItems" xlink:to="esp_BacklogPercentageOfRecognitionsYearTwo" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_BacklogPercentageOfRecognitionsYearThree" xlink:href="esp-20230630.xsd#esp_BacklogPercentageOfRecognitionsYearThree"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_RevenueDetailsLineItems" xlink:to="esp_BacklogPercentageOfRecognitionsYearThree" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_BacklogPercentageOfRecognitions" xlink:href="esp-20230630.xsd#esp_BacklogPercentageOfRecognitions"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_RevenueDetailsLineItems" xlink:to="esp_BacklogPercentageOfRecognitions" order="7" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/PropertyPlantandEquipmentDetails">
    <loc xlink:type="locator" xlink:label="esp_PropertyPlantandEquipmentDetailsLineItems" xlink:href="esp-20230630.xsd#esp_PropertyPlantandEquipmentDetailsLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_PropertyPlantandEquipmentDetailsTable" xlink:href="esp-20230630.xsd#esp_PropertyPlantandEquipmentDetailsTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="esp_PropertyPlantandEquipmentDetailsLineItems" xlink:to="esp_PropertyPlantandEquipmentDetailsTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_PropertyPlantandEquipmentDetailsTable" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain_0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_BuildingImprovementsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingImprovementsMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_BuildingImprovementsMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Depreciation" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Depreciation"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_PropertyPlantandEquipmentDetailsLineItems" xlink:to="us-gaap_Depreciation" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EquipmentExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquipmentExpense"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_PropertyPlantandEquipmentDetailsLineItems" xlink:to="us-gaap_EquipmentExpense" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_PropertyPlantandEquipmentDetailsLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_RevenueRecognitionMilestoneMethodRevenuesRecognized" xlink:href="esp-20230630.xsd#esp_RevenueRecognitionMilestoneMethodRevenuesRecognized"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_PropertyPlantandEquipmentDetailsLineItems" xlink:to="esp_RevenueRecognitionMilestoneMethodRevenuesRecognized" order="4" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/PensionExpenseDetails">
    <loc xlink:type="locator" xlink:label="us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PensionAndOtherPostretirementBenefitExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PensionAndOtherPostretirementBenefitExpense"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:to="us-gaap_PensionAndOtherPostretirementBenefitExpense" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_MultiemployerPlanPensionSignificantPlanContribution" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MultiemployerPlanPensionSignificantPlanContribution"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:to="us-gaap_MultiemployerPlanPensionSignificantPlanContribution" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:to="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_DefinedContributionPlanEmployersMatchingContribution" xlink:href="esp-20230630.xsd#esp_DefinedContributionPlanEmployersMatchingContribution"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:to="esp_DefinedContributionPlanEmployersMatchingContribution" order="3" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/SignificantCustomersDetails">
    <loc xlink:type="locator" xlink:label="esp_SignificantCustomersDetailsLineItems" xlink:href="esp-20230630.xsd#esp_SignificantCustomersDetailsLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_SignificantCustomersDetailsTable" xlink:href="esp-20230630.xsd#esp_SignificantCustomersDetailsTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="esp_SignificantCustomersDetailsLineItems" xlink:to="esp_SignificantCustomersDetailsTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_SignificantCustomersDetailsTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskTypeDomain_0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_SignificantCustomersDetailsTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain_0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_GeographicConcentrationRiskMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GeographicConcentrationRiskMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_GeographicConcentrationRiskMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_GeographicConcentrationRisk1Member" xlink:href="esp-20230630.xsd#esp_GeographicConcentrationRisk1Member"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="esp_GeographicConcentrationRisk1Member" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SalesRevenueNetMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SalesRevenueNetMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_SalesRevenueNetMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountsReceivableMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_AccountsReceivableMember" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_ConcentrationRiskPercentageOne" xlink:href="esp-20230630.xsd#esp_ConcentrationRiskPercentageOne"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_SignificantCustomersDetailsLineItems" xlink:to="esp_ConcentrationRiskPercentageOne" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SalesTypeLeaseRevenue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SalesTypeLeaseRevenue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_SignificantCustomersDetailsLineItems" xlink:to="us-gaap_SalesTypeLeaseRevenue" order="2" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/EmployeeStockOwnershipPlanDetails">
    <loc xlink:type="locator" xlink:label="esp_EmployeeStockOwnershipPlanDetailsLineItems" xlink:href="esp-20230630.xsd#esp_EmployeeStockOwnershipPlanDetailsLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_EmployeeStockOwnershipPlanDetailsTable" xlink:href="esp-20230630.xsd#esp_EmployeeStockOwnershipPlanDetailsTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="esp_EmployeeStockOwnershipPlanDetailsLineItems" 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/2023/elts/us-gaap-2023.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="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPPlanDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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-20230630.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="us-gaap_EmployeeStockOwnershipPlanESOPPlanDescription" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOwnershipPlanESOPPlanDescription"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_EmployeeStockOwnershipPlanDetailsLineItems" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPPlanDescription" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_EmployeeStockOwnershipPlanDetailsLineItems" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_EmployeeStockOwnershipPlanDetailsLineItems" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_EmployeeStockOwnershipPlanDetailsLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan" order="4" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/StockBasedCompensationDetails">
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationDetailsLineItems" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationDetailsTable" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="esp_StockBasedCompensationDetailsLineItems" xlink:to="esp_StockBasedCompensationDetailsTable" 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/2023/elts/us-gaap-2023.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="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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="srt_TitleOfIndividualAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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/2023/elts/srt-2023.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/2023/elts/srt-2023.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="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="srt_RangeMember" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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/2023/elts/srt-2023.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_PlanNameAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_MaximumMember" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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_TwoThousandSeventeenPlanMember" xlink:href="esp-20230630.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-20230630.xsd#esp_TwoThousandSevenPlanMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanNameDomain" xlink:to="esp_TwoThousandSevenPlanMember" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_NonEmployeeDirectorsMember" xlink:href="esp-20230630.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-20230630.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="esp_NonQualifiedStockOptionsMember" xlink:href="esp-20230630.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-20230630.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/2023/elts/us-gaap-2023.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-20230630.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="us-gaap_AllocatedShareBasedCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts" xlink:href="esp-20230630.xsd#esp_DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsLineItems" xlink:to="esp_DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear" xlink:href="esp-20230630.xsd#esp_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsLineItems" xlink:to="esp_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear" order="7" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear" xlink:href="esp-20230630.xsd#esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsLineItems" xlink:to="esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear" order="8" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" order="9" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" order="10" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber" xlink:href="esp-20230630.xsd#esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsLineItems" xlink:to="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber" order="11" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" order="12" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockDividendsPerShareDeclared" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockDividendsPerShareDeclared"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsLineItems" xlink:to="us-gaap_CommonStockDividendsPerShareDeclared" order="13" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_StockBasedCompensationDetailsLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" order="14" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/ConcentrationofCreditRiskDetails">
    <loc xlink:type="locator" xlink:label="esp_ConcentrationofCreditRiskDetailsLineItems" xlink:href="esp-20230630.xsd#esp_ConcentrationofCreditRiskDetailsLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_ConcentrationofCreditRiskDetailsTable" xlink:href="esp-20230630.xsd#esp_ConcentrationofCreditRiskDetailsTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="esp_ConcentrationofCreditRiskDetailsLineItems" xlink:to="esp_ConcentrationofCreditRiskDetailsTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_ConcentrationofCreditRiskDetailsTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskTypeDomain_0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_ConcentrationofCreditRiskDetailsTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain_0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TradeAccountsReceivableMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TradeAccountsReceivableMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_TradeAccountsReceivableMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SalesRevenueNetMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SalesRevenueNetMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_SalesRevenueNetMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_ConcentrationRiskPercentageOne" xlink:href="esp-20230630.xsd#esp_ConcentrationRiskPercentageOne"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ConcentrationofCreditRiskDetailsLineItems" xlink:to="esp_ConcentrationRiskPercentageOne" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_ConcentrationRiskNumberOfCustomers" xlink:href="esp-20230630.xsd#esp_ConcentrationRiskNumberOfCustomers"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_ConcentrationofCreditRiskDetailsLineItems" xlink:to="esp_ConcentrationRiskNumberOfCustomers" order="2" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/CommitmentsandContingenciesDetails">
    <loc xlink:type="locator" xlink:label="esp_CommitmentsandContingenciesDetailsLineItems" xlink:href="esp-20230630.xsd#esp_CommitmentsandContingenciesDetailsLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_CommitmentsandContingenciesDetailsTable" xlink:href="esp-20230630.xsd#esp_CommitmentsandContingenciesDetailsTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="esp_CommitmentsandContingenciesDetailsLineItems" xlink:to="esp_CommitmentsandContingenciesDetailsTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesByNatureOfContingencyAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_CommitmentsandContingenciesDetailsTable" xlink:to="us-gaap_LossContingenciesByNatureOfContingencyAxis" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LossContingencyNatureDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyNatureDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:to="us-gaap_LossContingencyNatureDomain" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LossContingencyNatureDomain_0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyNatureDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:to="us-gaap_LossContingencyNatureDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StandbyLettersOfCreditMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StandbyLettersOfCreditMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LossContingencyNatureDomain" xlink:to="us-gaap_StandbyLettersOfCreditMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LossContingencyAccrualAtCarryingValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyAccrualAtCarryingValue"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_CommitmentsandContingenciesDetailsLineItems" xlink:to="us-gaap_LossContingencyAccrualAtCarryingValue" order="1" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/StockholdersEquityDetails">
    <loc xlink:type="locator" xlink:label="us-gaap_StockholdersEquityNoteAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityNoteAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockDividendsPerShareCashPaid" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockDividendsPerShareCashPaid"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="us-gaap_CommonStockDividendsPerShareCashPaid" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DividendsCash" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DividendsCash"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="us-gaap_DividendsCash" order="2" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/LineofCreditDetails">
    <loc xlink:type="locator" xlink:label="esp_LineofCreditDetailsLineItems" xlink:href="esp-20230630.xsd#esp_LineofCreditDetailsLineItems"/>
    <loc xlink:type="locator" xlink:label="esp_LineofCreditDetailsTable" xlink:href="esp-20230630.xsd#esp_LineofCreditDetailsTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="esp_LineofCreditDetailsLineItems" xlink:to="esp_LineofCreditDetailsTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_VariableRateAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateAxis"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="esp_LineofCreditDetailsTable" xlink:to="us-gaap_VariableRateAxis" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_VariableRateDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_VariableRateDomain_0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateDomain"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain_0" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="esp_LondonInterbankOfferedRatesLIBORMember" xlink:href="esp-20230630.xsd#esp_LondonInterbankOfferedRatesLIBORMember"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_VariableRateDomain" xlink:to="esp_LondonInterbankOfferedRatesLIBORMember" order="0" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_LineofCreditDetailsLineItems" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="esp_LineofCreditDetailsLineItems" xlink:to="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" order="2" xbrldt:closed="true"/>
  </definitionLink>
  <definitionLink xlink:type="extended" xlink:role="http://espey.com/role/DocumentAndEntityInformation">
    <loc xlink:type="locator" xlink:label="dei_DocumentInformationLineItems" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentInformationLineItems"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentInformationTable" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentInformationTable"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentInformationTable" order="0" xbrldt:contextElement="segment" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_EntityRegistrantName" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityRegistrantName" order="1" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_TradingSymbol" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_TradingSymbol" order="2" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentType" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentType" order="3" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_CurrentFiscalYearEndDate" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_CurrentFiscalYearEndDate" order="4" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_EntityCommonStockSharesOutstanding" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCommonStockSharesOutstanding" order="5" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_EntityPublicFloat" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityPublicFloat"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityPublicFloat" order="6" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_AmendmentFlag" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AmendmentFlag" order="7" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_EntityCentralIndexKey" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCentralIndexKey" order="8" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_EntityCurrentReportingStatus" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCurrentReportingStatus" order="9" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_EntityVoluntaryFilers" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityVoluntaryFilers"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityVoluntaryFilers" order="10" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_EntityFilerCategory" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityFilerCategory" order="11" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_EntityWellKnownSeasonedIssuer" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityWellKnownSeasonedIssuer"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityWellKnownSeasonedIssuer" order="12" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentPeriodEndDate" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentPeriodEndDate" order="13" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentFiscalYearFocus" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalYearFocus" order="14" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentFiscalPeriodFocus" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalPeriodFocus" order="15" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_EntitySmallBusiness" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntitySmallBusiness" order="16" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_EntityEmergingGrowthCompany" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityEmergingGrowthCompany" order="17" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_EntityShellCompany" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityShellCompany" order="18" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_IcfrAuditorAttestationFlag" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_IcfrAuditorAttestationFlag"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_IcfrAuditorAttestationFlag" order="19" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentAnnualReport" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentAnnualReport"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentAnnualReport" order="20" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentTransitionReport" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentTransitionReport" order="21" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_EntityFileNumber" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityFileNumber" order="22" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_EntityIncorporationStateCountryCode" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityIncorporationStateCountryCode" order="23" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_EntityTaxIdentificationNumber" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityTaxIdentificationNumber" order="24" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_EntityAddressAddressLine1" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressAddressLine1" order="25" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_EntityAddressCityOrTown" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressCityOrTown" order="26" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_EntityAddressStateOrProvince" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressStateOrProvince" order="27" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_EntityAddressPostalZipCode" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressPostalZipCode" order="28" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_CityAreaCode" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_CityAreaCode" order="29" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_LocalPhoneNumber" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_LocalPhoneNumber" order="30" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_Security12bTitle" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_Security12bTitle" order="31" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_SecurityExchangeName" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_SecurityExchangeName" order="32" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_EntityInteractiveDataCurrent" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityInteractiveDataCurrent" order="33" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentFinStmtErrorCorrectionFlag" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFinStmtErrorCorrectionFlag"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFinStmtErrorCorrectionFlag" order="34" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_AuditorFirmId" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AuditorFirmId"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AuditorFirmId" order="35" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_AuditorName" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AuditorName"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AuditorName" order="36" xbrldt:closed="true"/>
    <loc xlink:type="locator" xlink:label="dei_AuditorLocation" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AuditorLocation"/>
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AuditorLocation" order="37" xbrldt:closed="true"/>
  </definitionLink>
</linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>11
<FILENAME>esp-20230630_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: Thu Sep 21 14:52:04 UTC 2023 -->
<linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" roleURI="http://www.xbrl.org/2009/role/negatedLabel"/>
  <labelLink xlink:type="extended" xlink:role="http://www.xbrl.org/2003/role/link">
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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-20230630.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/2023/elts/us-gaap-2023.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&apos; 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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OperatingIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_IncomeLossAttributableToParent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossAttributableToParent"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_IncomeLossAttributableToParent_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_IncomeLossAttributableToParent" xlink:to="us-gaap_IncomeLossAttributableToParent_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/terseLabel" 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/2003/role/verboseLabel" xlink:label="us-gaap_NetIncomeLoss_lbl1" xml:lang="en-US">Net income (loss) (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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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">(Decrease) increase in cash and short term investments</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/2023/elts/us-gaap-2023.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 the year</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 the year</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="esp_NatureOfOperationsAbstract" xlink:href="esp-20230630.xsd#esp_NatureOfOperationsAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_NatureOfOperationsAbstract_lbl" xml:lang="en-US">Nature of Operations [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_NatureOfOperationsAbstract" xlink:to="esp_NatureOfOperationsAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountingPoliciesAbstract_lbl" xml:lang="en-US">Summary of Significant Accounting Policies [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis_lbl" xml:lang="en-US">Long-Lived Tangible Asset [Axis]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis_lbl"/>
    <loc xlink:type="locator" xlink:label="srt_RangeAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_RangeAxis_lbl" xml:lang="en-US">Statistical Measurement [Axis]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeAxis" xlink:to="srt_RangeAxis_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RevenuesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_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_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:to="us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FinancialInstrumentAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_ContractorsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractorsAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractorsAbstract_lbl" xml:lang="en-US">Contracts in Process [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractorsAbstract" xlink:to="us-gaap_ContractorsAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract_lbl" xml:lang="en-US">Property, Plant and Equipment [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CompensationAndRetirementDisclosureAbstract_lbl" xml:lang="en-US">Pension Expense [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:to="us-gaap_CompensationAndRetirementDisclosureAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxDisclosureAbstract_lbl" xml:lang="en-US">Provision for Income Taxes [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxDisclosureAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract_lbl" xml:lang="en-US">Schedule of Components of the Provision for Income Taxes [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract" xlink:to="esp_ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" 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"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl0" 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_lbl0"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfEffectiveIncomeTaxRatesAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfEffectiveIncomeTaxRatesAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ScheduleOfEffectiveIncomeTaxRatesAbstract_lbl" xml:lang="en-US">Schedule of Effective Income Tax Rates [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfEffectiveIncomeTaxRatesAbstract" xlink:to="esp_ScheduleOfEffectiveIncomeTaxRatesAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfDeferredTaxAssetsAndLiabilitiesAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ScheduleOfDeferredTaxAssetsAndLiabilitiesAbstract_lbl" xml:lang="en-US">Schedule of Deferred Tax Assets and Liabilities [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:to="esp_ScheduleOfDeferredTaxAssetsAndLiabilitiesAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsGross" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_DeferredTaxAssetsGross_lbl" xml:lang="en-US">Total deferred tax assets</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_DeferredIncomeTaxLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_DeferredIncomeTaxLiabilities_lbl" xml:lang="en-US">Total deferred tax liability</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxLiabilities" xlink:to="us-gaap_DeferredIncomeTaxLiabilities_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_DeferredTaxAssetLiability" xlink:href="esp-20230630.xsd#esp_DeferredTaxAssetLiability"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="esp_DeferredTaxAssetLiability_lbl" xml:lang="en-US">Net deferred tax liability</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DeferredTaxAssetLiability" xlink:to="esp_DeferredTaxAssetLiability_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_SignificantCustomersAbstract" xlink:href="esp-20230630.xsd#esp_SignificantCustomersAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_SignificantCustomersAbstract_lbl" xml:lang="en-US">Significant Customers [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_SignificantCustomersAbstract" xlink:to="esp_SignificantCustomersAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_EmployeeStockOwnershipPlanAbstract" xlink:href="esp-20230630.xsd#esp_EmployeeStockOwnershipPlanAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_EmployeeStockOwnershipPlanAbstract_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="esp_EmployeeStockOwnershipPlanAbstract" xlink:to="esp_EmployeeStockOwnershipPlanAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" xml:lang="en-US">Number of Shares Subject to Option, Beginning</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/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl0" 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_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl1" xml:lang="en-US">Stock options outstanding</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"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted Average Exercise Price, Beginning</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"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl0" 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_lbl0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_RisksAndUncertaintiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RisksAndUncertaintiesAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RisksAndUncertaintiesAbstract_lbl" xml:lang="en-US">Concentration of Credit Risk [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RisksAndUncertaintiesAbstract" xlink:to="us-gaap_RisksAndUncertaintiesAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RelatedPartyTransactionsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RelatedPartyTransactionsAbstract_lbl" xml:lang="en-US">Related Parties [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionsAbstract" xlink:to="us-gaap_RelatedPartyTransactionsAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_CommonStockCapitalSharesReservedForFutureIssuance" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_lbl" xml:lang="en-US">Number of common shares reserved</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtDisclosureAbstract_lbl" xml:lang="en-US">Line of Credit [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_DebtDisclosureAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_QuarterlyFinancialInformationDisclosureAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_QuarterlyFinancialInformationDisclosureAbstract_lbl" xml:lang="en-US">Quarterly Financial Information (Unaudited) [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:to="us-gaap_QuarterlyFinancialInformationDisclosureAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_QuarterlyFinancialInformationAxis" xlink:href="esp-20230630.xsd#esp_QuarterlyFinancialInformationAxis"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_QuarterlyFinancialInformationAxis_lbl" xml:lang="en-US">Quarterly Financial Information Axis</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_QuarterlyFinancialInformationAxis" xlink:to="esp_QuarterlyFinancialInformationAxis_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentType" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_DocumentType_lbl" xml:lang="en-US">Document Type</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentAnnualReport" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentAnnualReport"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_DocumentAnnualReport_lbl" xml:lang="en-US">Document Annual Report</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentAnnualReport" xlink:to="dei_DocumentAnnualReport_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_CurrentFiscalYearEndDate" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_CurrentFiscalYearEndDate_lbl" xml:lang="en-US">Current Fiscal Year End Date</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentPeriodEndDate" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_DocumentPeriodEndDate_lbl" xml:lang="en-US">Document Period End Date</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentFiscalYearFocus" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_DocumentFiscalYearFocus_lbl" xml:lang="en-US">Document Fiscal Year Focus</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentTransitionReport" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_DocumentTransitionReport_lbl" xml:lang="en-US">Document Transition Report</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_EntityFileNumber" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_EntityFileNumber_lbl" xml:lang="en-US">Entity File Number</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFileNumber" xlink:to="dei_EntityFileNumber_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_EntityRegistrantName" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_EntityRegistrantName_lbl" xml:lang="en-US">Entity Registrant Name</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_EntityIncorporationStateCountryCode" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_EntityIncorporationStateCountryCode_lbl" xml:lang="en-US">Entity Incorporation, State or Country Code</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_EntityTaxIdentificationNumber" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_EntityTaxIdentificationNumber_lbl" xml:lang="en-US">Entity Tax Identification Number</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_EntityAddressAddressLine1" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_EntityAddressAddressLine1_lbl" xml:lang="en-US">Entity Address, Address Line One</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_EntityAddressCityOrTown" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_EntityAddressCityOrTown_lbl" xml:lang="en-US">Entity Address, City or Town</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_EntityAddressStateOrProvince" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_EntityAddressStateOrProvince_lbl" xml:lang="en-US">Entity Address, State or Province</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_EntityAddressPostalZipCode" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_EntityAddressPostalZipCode_lbl" xml:lang="en-US">Entity Address, Postal Zip Code</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_CityAreaCode" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_CityAreaCode_lbl" xml:lang="en-US">City Area Code</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CityAreaCode" xlink:to="dei_CityAreaCode_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_LocalPhoneNumber" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_LocalPhoneNumber_lbl" xml:lang="en-US">Local Phone Number</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_Security12bTitle" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_Security12bTitle_lbl" xml:lang="en-US">Title of 12(b) Security</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12bTitle" xlink:to="dei_Security12bTitle_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_TradingSymbol" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_TradingSymbol_lbl" xml:lang="en-US">Trading Symbol</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_TradingSymbol" xlink:to="dei_TradingSymbol_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_SecurityExchangeName" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_SecurityExchangeName_lbl" xml:lang="en-US">Security Exchange Name</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityExchangeName" xlink:to="dei_SecurityExchangeName_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_EntityWellKnownSeasonedIssuer" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityWellKnownSeasonedIssuer"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_EntityWellKnownSeasonedIssuer_lbl" xml:lang="en-US">Entity Well-known Seasoned Issuer</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityWellKnownSeasonedIssuer" xlink:to="dei_EntityWellKnownSeasonedIssuer_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_EntityVoluntaryFilers" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityVoluntaryFilers"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_EntityVoluntaryFilers_lbl" xml:lang="en-US">Entity Voluntary Filers</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityVoluntaryFilers" xlink:to="dei_EntityVoluntaryFilers_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_EntityCurrentReportingStatus" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_EntityCurrentReportingStatus_lbl" xml:lang="en-US">Entity Current Reporting Status</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_EntityInteractiveDataCurrent" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_EntityInteractiveDataCurrent_lbl" xml:lang="en-US">Entity Interactive Data Current</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_EntityFilerCategory" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_EntityFilerCategory_lbl" xml:lang="en-US">Entity Filer Category</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFilerCategory" xlink:to="dei_EntityFilerCategory_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_EntitySmallBusiness" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_EntitySmallBusiness_lbl" xml:lang="en-US">Entity Small Business</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_EntityEmergingGrowthCompany" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_EntityEmergingGrowthCompany_lbl" xml:lang="en-US">Entity Emerging Growth Company</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_IcfrAuditorAttestationFlag" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_IcfrAuditorAttestationFlag"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_IcfrAuditorAttestationFlag_lbl" xml:lang="en-US">ICFR Auditor Attestation Flag</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_IcfrAuditorAttestationFlag" xlink:to="dei_IcfrAuditorAttestationFlag_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentFinStmtErrorCorrectionFlag" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFinStmtErrorCorrectionFlag"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_DocumentFinStmtErrorCorrectionFlag_lbl" xml:lang="en-US">Document Financial Statement Error Correction [Flag]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFinStmtErrorCorrectionFlag" xlink:to="dei_DocumentFinStmtErrorCorrectionFlag_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_EntityShellCompany" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_EntityShellCompany_lbl" xml:lang="en-US">Entity Shell Company</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityShellCompany" xlink:to="dei_EntityShellCompany_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_EntityPublicFloat" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityPublicFloat"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_EntityPublicFloat_lbl" xml:lang="en-US">Entity Public Float</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityPublicFloat" xlink:to="dei_EntityPublicFloat_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_EntityCommonStockSharesOutstanding" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_EntityCommonStockSharesOutstanding_lbl" xml:lang="en-US">Entity Common Stock, Shares Outstanding</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_AuditorFirmId" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AuditorFirmId"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_AuditorFirmId_lbl" xml:lang="en-US">Auditor Firm ID</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorFirmId" xlink:to="dei_AuditorFirmId_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_AuditorName" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AuditorName"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_AuditorName_lbl" xml:lang="en-US">Auditor Name</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorName" xlink:to="dei_AuditorName_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_AuditorLocation" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AuditorLocation"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_AuditorLocation_lbl" xml:lang="en-US">Auditor Location</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorLocation" xlink:to="dei_AuditorLocation_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_AmendmentFlag" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_AmendmentFlag_lbl" xml:lang="en-US">Amendment Flag</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentFiscalPeriodFocus" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_DocumentFiscalPeriodFocus_lbl" xml:lang="en-US">Document Fiscal Period Focus</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus_lbl"/>
    <loc xlink:type="locator" xlink:label="dei_EntityCentralIndexKey" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="dei_EntityCentralIndexKey_lbl" xml:lang="en-US">Entity Central Index Key</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AssetsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_AvailableForSaleSecuritiesDebtSecurities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecurities_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_AvailableForSaleSecuritiesDebtSecurities" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecurities_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecurities_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_AvailableForSaleSecuritiesDebtSecurities" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecurities_lbl0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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, net of allowance 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/2023/elts/us-gaap-2023.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"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_lbl0" xml:lang="en-US">Doubtful accounts</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"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxesReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxesReceivable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncomeTaxesReceivable_lbl" xml:lang="en-US">Income tax receivable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxesReceivable" xlink:to="us-gaap_IncomeTaxesReceivable_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_UnlabeledAbstract" xlink:href="esp-20230630.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="esp_InventoriesAbstract" xlink:href="esp-20230630.xsd#esp_InventoriesAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_InventoriesAbstract_lbl" xml:lang="en-US">Inventories:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_InventoriesAbstract" xlink:to="esp_InventoriesAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryRawMaterials" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_UnlabeledAbstract0" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract0_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract0" xlink:to="esp_UnlabeledAbstract0_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="esp_UnlabeledAbstract1" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract1_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract1" xlink:to="esp_UnlabeledAbstract1_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" 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"/>
    <loc xlink:type="locator" xlink:label="esp_UnlabeledAbstract2" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract2"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract2_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract2" xlink:to="esp_UnlabeledAbstract2_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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="esp_AccruedExpensesAbstract" xlink:href="esp-20230630.xsd#esp_AccruedExpensesAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_AccruedExpensesAbstract_lbl" xml:lang="en-US">Accrued expenses:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_AccruedExpensesAbstract" xlink:to="esp_AccruedExpensesAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccruedSalariesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_OtherEmployeeRelatedLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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="esp_UnlabeledAbstract3" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract3"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract3_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract3" xlink:to="esp_UnlabeledAbstract3_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_DeferredTaxLiability" xlink:href="esp-20230630.xsd#esp_DeferredTaxLiability"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_DeferredTaxLiability_lbl" xml:lang="en-US">Deferred tax liabilities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DeferredTaxLiability" xlink:to="esp_DeferredTaxLiability_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_UnlabeledAbstract4" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract4"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract4_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract4" xlink:to="esp_UnlabeledAbstract4_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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 14)</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="esp_UnlabeledAbstract5" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract5"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract5_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract5" xlink:to="esp_UnlabeledAbstract5_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_CommonStockParValue3313PerShareAbstract" xlink:href="esp-20230630.xsd#esp_CommonStockParValue3313PerShareAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_CommonStockParValue3313PerShareAbstract_lbl" xml:lang="en-US">Common stock, par value $.33-1/3 per share</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_CommonStockParValue3313PerShareAbstract" xlink:to="esp_CommonStockParValue3313PerShareAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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">Common stock, par value $.33-1/3 per share	Authorized 10,000,000 shares; Issued 3,129,874 shares as of June 30, 2023 and 2022. Outstanding 2,702,633 as of June 30, 2023 and 2022 (includes 233,645 and 256,293 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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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 loss</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/2023/elts/us-gaap-2023.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="esp_UnlabeledAbstract6" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract6"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract6_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract6" xlink:to="esp_UnlabeledAbstract6_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TreasuryStockCommonShares" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="esp_UnlabeledAbstract7" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract7"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract7_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract7" xlink:to="esp_UnlabeledAbstract7_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Revenues" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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="esp_UnlabeledAbstract8" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract8"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract8_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract8" xlink:to="esp_UnlabeledAbstract8_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="esp_UnlabeledAbstract9" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract9"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract9_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract9" xlink:to="esp_UnlabeledAbstract9_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherIncomeAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherIncomeAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OtherIncomeAbstract_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_OtherIncomeAbstract" xlink:to="us-gaap_OtherIncomeAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentIncomeInterestAndDividend" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentIncomeInterestAndDividend"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InvestmentIncomeInterestAndDividend_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_InvestmentIncomeInterestAndDividend" xlink:to="us-gaap_InvestmentIncomeInterestAndDividend_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherNonoperatingIncome" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="esp_UnlabeledAbstract10" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract10"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract10_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract10" xlink:to="esp_UnlabeledAbstract10_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_UnlabeledAbstract11" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract11"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract11_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract11" xlink:to="esp_UnlabeledAbstract11_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_UnlabeledAbstract12" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract12"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract12_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract12" xlink:to="esp_UnlabeledAbstract12_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_UnlabeledAbstract13" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract13"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract13_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract13" xlink:to="esp_UnlabeledAbstract13_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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 (loss), 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/2023/elts/us-gaap-2023.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="esp_UnlabeledAbstract14" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract14"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract14_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract14" xlink:to="esp_UnlabeledAbstract14_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_UnlabeledAbstract15" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract15"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract15_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract15" xlink:to="esp_UnlabeledAbstract15_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EarningsPerShareAbstract_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_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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="esp_UnlabeledAbstract16" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract16"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract16_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract16" xlink:to="esp_UnlabeledAbstract16_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl0" 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_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_ComprehensiveIncomeNetOfTaxAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxAbstract_lbl" xml:lang="en-US">Comprehensive income:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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, 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/2023/elts/us-gaap-2023.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, 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_StockGrantedDuringPeriodValueSharebasedCompensationGross" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationGross"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationGross_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_StockGrantedDuringPeriodValueSharebasedCompensationGross" xlink:to="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationGross_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan_lbl" xml:lang="en-US">Reduction of unearned ESOP shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan" xlink:to="us-gaap_StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockDividendsPerShareCashPaid" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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 declared 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_CommonStockDividendsPerShareCashPaid" xlink:to="us-gaap_CommonStockDividendsPerShareCashPaid_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_CommonStockDividendsPerShareCashPaid_lbl0" xml:lang="en-US">Cash dividends on common stock (in Dollars 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_lbl0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_Depreciation_lbl0" xml:lang="en-US">Depreciation expense</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"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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) expense</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="esp_UnlabeledAbstract17" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract17"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract17_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract17" xlink:to="esp_UnlabeledAbstract17_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable_lbl" xml:lang="en-US">Decrease in accounts payable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccruedSalaries" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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">Increase 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-20230630.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="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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">(Decrease) 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-20230630.xsd#esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld_lbl" xml:lang="en-US">Increase (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/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability_lbl" xml:lang="en-US">Increase in contract liabilities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerLiability_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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">(Decrease) 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="esp_UnlabeledAbstract18" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract18"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract18_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract18" xlink:to="esp_UnlabeledAbstract18_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="us-gaap_ProceedsFromSaleOfOtherProductiveAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleOfOtherProductiveAssets"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ProceedsFromSaleOfOtherProductiveAssets_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_ProceedsFromSaleOfOtherProductiveAssets" xlink:to="us-gaap_ProceedsFromSaleOfOtherProductiveAssets_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="esp_UnlabeledAbstract19" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract19"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract19_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract19" xlink:to="esp_UnlabeledAbstract19_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_CashFlowsFromFinancingActivitiesAbstract" xlink:href="esp-20230630.xsd#esp_CashFlowsFromFinancingActivitiesAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_CashFlowsFromFinancingActivitiesAbstract_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="esp_CashFlowsFromFinancingActivitiesAbstract" xlink:to="esp_CashFlowsFromFinancingActivitiesAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_UnlabeledAbstract20" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract20"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract20_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract20" xlink:to="esp_UnlabeledAbstract20_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_UnlabeledAbstract21" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract21"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract21_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract21" xlink:to="esp_UnlabeledAbstract21_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SupplementalCashFlowInformationAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract_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_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxesPaid" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxesPaid"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncomeTaxesPaid_lbl" xml:lang="en-US">Income taxes paid net of refunds</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxesPaid" xlink:to="us-gaap_IncomeTaxesPaid_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_UnearnedEsopSharesCost" xlink:href="esp-20230630.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/2023/elts/us-gaap-2023.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 427,241 shares of common stock in treasury as of June 30, 2023 and 2022</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_DividendsCommonStockCash" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DividendsCommonStockCash"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DividendsCommonStockCash_lbl" xml:lang="en-US">Dividends paid on common stock $0.20 per share</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendsCommonStockCash" xlink:to="us-gaap_DividendsCommonStockCash_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_GainLossOnDispositionOfAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnDispositionOfAssets"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_GainLossOnDispositionOfAssets_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_GainLossOnDispositionOfAssets" xlink:to="us-gaap_GainLossOnDispositionOfAssets_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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 receivables</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/2023/elts/us-gaap-2023.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">(Increase) decrease in income tax 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/2023/elts/us-gaap-2023.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">(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_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_lbl" xml:lang="en-US">Increase in prepaid expenses and other current assets</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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 paid 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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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 (Loss) Income</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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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-20230630.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_NatureOfOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NatureOfOperations"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NatureOfOperations_lbl" xml:lang="en-US">Nature of Operations</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NatureOfOperations" xlink:to="us-gaap_NatureOfOperations_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SignificantAccountingPoliciesTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock_lbl" xml:lang="en-US">Summary of Significant Accounting Policies</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock" xlink:href="esp-20230630.xsd#esp_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock_lbl" xml:lang="en-US">Schedule of the Estimated Useful Lives of Depreciable Assets</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock" xlink:to="esp_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife_lbl" xml:lang="en-US">Estimated useful lives of depreciable assets</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:to="us-gaap_PropertyPlantAndEquipmentUsefulLife_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock_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_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" xlink:to="us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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 Available-for-Sale 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_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_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_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:to="us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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</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="esp_June302023Abstract" xlink:href="esp-20230630.xsd#esp_June302023Abstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_June302023Abstract_lbl" xml:lang="en-US">June 30, 2023</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_June302023Abstract" xlink:to="esp_June302023Abstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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">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_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_UnlabeledAbstract22" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract22"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract22_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract22" xlink:to="esp_UnlabeledAbstract22_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_June302022Abstract" xlink:href="esp-20230630.xsd#esp_June302022Abstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_June302022Abstract_lbl" xml:lang="en-US">June 30, 2022</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_June302022Abstract" xlink:to="esp_June302022Abstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LongTermContractsOrProgramsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermContractsOrProgramsDisclosureTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LongTermContractsOrProgramsDisclosureTextBlock_lbl" xml:lang="en-US">Contracts in Process</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermContractsOrProgramsDisclosureTextBlock" xlink:to="us-gaap_LongTermContractsOrProgramsDisclosureTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfContractsInProcessTableTextBlock" xlink:href="esp-20230630.xsd#esp_ScheduleOfContractsInProcessTableTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_ScheduleOfContractsInProcessTableTextBlock_lbl" xml:lang="en-US">Schedule of Contracts in Process</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfContractsInProcessTableTextBlock" xlink:to="esp_ScheduleOfContractsInProcessTableTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_UnrecognizedGrossContractValue" xlink:href="esp-20230630.xsd#esp_UnrecognizedGrossContractValue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnrecognizedGrossContractValue_lbl" xml:lang="en-US">Unrecognized gross contract value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnrecognizedGrossContractValue" xlink:to="esp_UnrecognizedGrossContractValue_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl" xml:lang="en-US">Property, Plant and Equipment</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl" xml:lang="en-US">Schedule of Property, Plant and Equipment</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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, 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_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_PensionExpenseTextBlock" xlink:href="esp-20230630.xsd#esp_PensionExpenseTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_PensionExpenseTextBlock_lbl" xml:lang="en-US">Pension Expense</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_PensionExpenseTextBlock" xlink:to="esp_PensionExpenseTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock_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_IncomeTaxDisclosureTextBlock" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_lbl" xml:lang="en-US">Schedule of Components of the Provision for Income Taxes</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:to="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CurrentFederalTaxExpenseBenefit"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit_lbl" xml:lang="en-US">Current tax expense - federal</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentFederalTaxExpenseBenefit" xlink:to="us-gaap_CurrentFederalTaxExpenseBenefit_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit_lbl" xml:lang="en-US">Current tax expense - state</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:to="us-gaap_CurrentStateAndLocalTaxExpenseBenefit_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_DeferredIncomeTaxesExpenseBenefit" xlink:href="esp-20230630.xsd#esp_DeferredIncomeTaxesExpenseBenefit"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_DeferredIncomeTaxesExpenseBenefit_lbl" xml:lang="en-US">Deferred tax (benefit) expense</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DeferredIncomeTaxesExpenseBenefit" xlink:to="esp_DeferredIncomeTaxesExpenseBenefit_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_lbl" xml:lang="en-US">Schedule of Effective Income Tax Rates</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:to="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_USFederalStatutoryIncomeTaxRate" xlink:href="esp-20230630.xsd#esp_USFederalStatutoryIncomeTaxRate"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_USFederalStatutoryIncomeTaxRate_lbl" xml:lang="en-US">U.S. federal statutory income tax rate</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_USFederalStatutoryIncomeTaxRate" xlink:to="esp_USFederalStatutoryIncomeTaxRate_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_IncreaseReductionInRateResultingFromAbstract" xlink:href="esp-20230630.xsd#esp_IncreaseReductionInRateResultingFromAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_IncreaseReductionInRateResultingFromAbstract_lbl" xml:lang="en-US">Increase (reduction) in rate resulting from:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_IncreaseReductionInRateResultingFromAbstract" xlink:to="esp_IncreaseReductionInRateResultingFromAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_lbl" xml:lang="en-US">State franchise tax, net of federal income tax benefit</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_EffectiveIncomeTaxRateReconciliationESOPFairValue" xlink:href="esp-20230630.xsd#esp_EffectiveIncomeTaxRateReconciliationESOPFairValue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_EffectiveIncomeTaxRateReconciliationESOPFairValue_lbl" xml:lang="en-US">ESOP cost versus Fair Market Value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_EffectiveIncomeTaxRateReconciliationESOPFairValue" xlink:to="esp_EffectiveIncomeTaxRateReconciliationESOPFairValue_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends_lbl" xml:lang="en-US">Dividend on allocated ESOP shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost_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_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback" xlink:href="esp-20230630.xsd#esp_EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback_lbl" xml:lang="en-US">Rate Differential on Net Operating Loss Carryback</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback" xlink:to="esp_EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_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_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl" xml:lang="en-US">Effective tax rate</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_lbl" xml:lang="en-US">Schedule of Deferred Tax Assets and Liabilities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:to="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_DeferredTaxAssetsAbstract" xlink:href="esp-20230630.xsd#esp_DeferredTaxAssetsAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_DeferredTaxAssetsAbstract_lbl" xml:lang="en-US">Deferred tax assets:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DeferredTaxAssetsAbstract" xlink:to="esp_DeferredTaxAssetsAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities_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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther_lbl" xml:lang="en-US">ESOP</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_UnlabeledAbstract23" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract23"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract23_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract23" xlink:to="esp_UnlabeledAbstract23_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_DeferredTaxLiabilityAbstract" xlink:href="esp-20230630.xsd#esp_DeferredTaxLiabilityAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_DeferredTaxLiabilityAbstract_lbl" xml:lang="en-US">Deferred tax liability:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DeferredTaxLiabilityAbstract" xlink:to="esp_DeferredTaxLiabilityAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_lbl" xml:lang="en-US">Property, plant and equipment - principally due to differences in depreciation methods</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:to="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts_lbl" xml:lang="en-US">Inventory - effect of uniform capitalization</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts" xlink:to="us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxLiabilitiesPrepaidExpenses"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_lbl" xml:lang="en-US">Prepaid expenses</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:to="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_UnlabeledAbstract24" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract24"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract24_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract24" xlink:to="esp_UnlabeledAbstract24_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_SignificantCustomersTextBlock" xlink:href="esp-20230630.xsd#esp_SignificantCustomersTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_SignificantCustomersTextBlock_lbl" xml:lang="en-US">Significant Customers</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_SignificantCustomersTextBlock" xlink:to="esp_SignificantCustomersTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_EmployeeStockOwnershipPlanTextBlock" xlink:href="esp-20230630.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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 for Option Awards</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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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">Expected stock price 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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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 option life (in years)</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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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, Beginning</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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm" xlink:href="esp-20230630.xsd#esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm" xlink:to="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_StockIssuedDuringPeriodSharesStockOptionExercised" xlink:href="esp-20230630.xsd#esp_StockIssuedDuringPeriodSharesStockOptionExercised"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_StockIssuedDuringPeriodSharesStockOptionExercised_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_StockIssuedDuringPeriodSharesStockOptionExercised" xlink:to="esp_StockIssuedDuringPeriodSharesStockOptionExercised_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod" xlink:href="esp-20230630.xsd#esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod" xlink:to="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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, Ending</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2_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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2" xlink:to="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_ConcentrationRiskDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ConcentrationRiskDisclosureTextBlock_lbl" xml:lang="en-US">Concentration of Credit Risk</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:to="us-gaap_ConcentrationRiskDisclosureTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock_lbl" xml:lang="en-US">Related Parties</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:to="us-gaap_RelatedPartyTransactionsDisclosureTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_StockholdersEquityNoteDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock_lbl" xml:lang="en-US">Stockholders&apos; Equity</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:to="us-gaap_StockholdersEquityNoteDisclosureTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock" xlink:href="esp-20230630.xsd#esp_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock_lbl" xml:lang="en-US">Schedule of Reserved Common Shares for Future Issuance</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock" xlink:to="esp_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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">Stock options available for issuance</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"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_lbl0" 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_lbl0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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 Reconciliation of the Numerators and Denominators of the Basic and Diluted Earnings Per Share Computations</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="esp_NumeratorAbstract" xlink:href="esp-20230630.xsd#esp_NumeratorAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_NumeratorAbstract_lbl" xml:lang="en-US">Numerator:</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_NumeratorAbstract" xlink:to="esp_NumeratorAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_UnlabeledAbstract25" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract25"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract25_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract25" xlink:to="esp_UnlabeledAbstract25_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_DenominatorAbstract" xlink:href="esp-20230630.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="esp_UnlabeledAbstract26" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract26"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract26_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract26" xlink:to="esp_UnlabeledAbstract26_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareBasicAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan_lbl" xml:lang="en-US">Common shares issued to ESOP during the period</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_WeightedAverageNumberOfSharesIssuedBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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 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_WeightedAverageNumberOfSharesIssuedBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesIssuedBasic_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation_lbl" xml:lang="en-US">Weighted average common shares purchased during the period</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_WeightedAverageNumberOfSharesContingentlyIssuable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesContingentlyIssuable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_WeightedAverageNumberOfSharesContingentlyIssuable_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_WeightedAverageNumberOfSharesContingentlyIssuable" xlink:to="us-gaap_WeightedAverageNumberOfSharesContingentlyIssuable_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareDilutedAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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 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_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:to="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_DebtDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DebtDisclosureTextBlock_lbl" xml:lang="en-US">Line of Credit</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDisclosureTextBlock" xlink:to="us-gaap_DebtDisclosureTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_QuarterlyFinancialInformationTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_QuarterlyFinancialInformationTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_QuarterlyFinancialInformationTextBlock_lbl" xml:lang="en-US">Quarterly Financial Information (Unaudited)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_QuarterlyFinancialInformationTextBlock" xlink:to="us-gaap_QuarterlyFinancialInformationTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_lbl" xml:lang="en-US">Schedule of Quarterly Financial Information</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:to="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_NetIncomePerShareAbstract" xlink:href="esp-20230630.xsd#esp_NetIncomePerShareAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_NetIncomePerShareAbstract_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="esp_NetIncomePerShareAbstract" xlink:to="esp_NetIncomePerShareAbstract_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_UnlabeledAbstract27" xlink:href="esp-20230630.xsd#esp_UnlabeledAbstract27"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_UnlabeledAbstract27_lbl" xml:lang="en-US"></label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract27" xlink:to="esp_UnlabeledAbstract27_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_a2022Abstract" xlink:href="esp-20230630.xsd#esp_a2022Abstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_a2022Abstract_lbl" xml:lang="en-US">2022</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_a2022Abstract" xlink:to="esp_a2022Abstract_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_NetIncomePerShareAbstract0" xlink:href="esp-20230630.xsd#esp_NetIncomePerShareAbstract0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_NetIncomePerShareAbstract0_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="esp_NetIncomePerShareAbstract0" xlink:to="esp_NetIncomePerShareAbstract0_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" xml:lang="en-US">Accumulated depreciation</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl" 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_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_lbl0" xml:lang="en-US">Shares cancelled (in Shares)</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"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased_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_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" xlink:to="us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_BuildingAndBuildingImprovementsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingAndBuildingImprovementsMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_BuildingAndBuildingImprovementsMember_lbl" xml:lang="en-US">Buildings and improvements [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BuildingAndBuildingImprovementsMember" xlink:to="us-gaap_BuildingAndBuildingImprovementsMember_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_MachineryAndEquipmentMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MachineryAndEquipmentMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_MachineryAndEquipmentMember_lbl" xml:lang="en-US">Machinery and equipment [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MachineryAndEquipmentMember" xlink:to="us-gaap_MachineryAndEquipmentMember_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FurnitureAndFixturesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FurnitureAndFixturesMember_lbl" xml:lang="en-US">Furniture and fixtures [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FurnitureAndFixturesMember" xlink:to="us-gaap_FurnitureAndFixturesMember_lbl"/>
    <loc xlink:type="locator" xlink:label="srt_MinimumMember" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="srt_MinimumMember_lbl" xml:lang="en-US">Minimum [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MinimumMember" xlink:to="srt_MinimumMember_lbl"/>
    <loc xlink:type="locator" xlink:label="srt_MaximumMember" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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="us-gaap_CertificatesOfDepositMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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">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_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LandMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LandMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LandMember_lbl" xml:lang="en-US">Land [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LandMember" xlink:to="us-gaap_LandMember_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_BuildingImprovementsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingImprovementsMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_BuildingImprovementsMember_lbl" xml:lang="en-US">Building and improvements [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BuildingImprovementsMember" xlink:to="us-gaap_BuildingImprovementsMember_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_BuildingImprovementsMember_lbl0" xml:lang="en-US">Building Improvements [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BuildingImprovementsMember" xlink:to="us-gaap_BuildingImprovementsMember_lbl0"/>
    <loc xlink:type="locator" xlink:label="esp_FirstQuarterMember" xlink:href="esp-20230630.xsd#esp_FirstQuarterMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_FirstQuarterMember_lbl" xml:lang="en-US">First Quarter [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_FirstQuarterMember" xlink:to="esp_FirstQuarterMember_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_SecondQuarterMember" xlink:href="esp-20230630.xsd#esp_SecondQuarterMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_SecondQuarterMember_lbl" xml:lang="en-US">Second Quarter [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_SecondQuarterMember" xlink:to="esp_SecondQuarterMember_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_ThirdQuarterMember" xlink:href="esp-20230630.xsd#esp_ThirdQuarterMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_ThirdQuarterMember_lbl" xml:lang="en-US">Third Quarter [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ThirdQuarterMember" xlink:to="esp_ThirdQuarterMember_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_FourthQuarterMember" xlink:href="esp-20230630.xsd#esp_FourthQuarterMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_FourthQuarterMember_lbl" xml:lang="en-US">Fourth Quarter [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_FourthQuarterMember" xlink:to="esp_FourthQuarterMember_lbl"/>
    <loc xlink:type="locator" xlink:label="srt_StatementScenarioAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_ConcentrationRiskByBenchmarkAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis_lbl" xml:lang="en-US">Concentration Risk Benchmark [Axis]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConcentrationRiskByTypeAxis_lbl" xml:lang="en-US">Concentration Risk Type [Axis]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskByTypeAxis_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_AwardTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AwardTypeAxis_lbl" xml:lang="en-US">Award Type [Axis]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_AwardTypeAxis_lbl"/>
    <loc xlink:type="locator" xlink:label="srt_TitleOfIndividualAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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 of Individual [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/2023/elts/us-gaap-2023.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="us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesByNatureOfContingencyAxis"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LossContingenciesByNatureOfContingencyAxis_lbl" xml:lang="en-US">Loss Contingency Nature [Axis]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:to="us-gaap_LossContingenciesByNatureOfContingencyAxis_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_VariableRateAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateAxis"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_VariableRateAxis_lbl" xml:lang="en-US">Variable Rate [Axis]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateAxis_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ContractWithCustomerLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_FiniteLivedIntangibleAssetsNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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-20230630.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, 2024</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-20230630.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, 2025</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-20230630.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, 2026</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-20230630.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="us-gaap_EquipmentExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquipmentExpense"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EquipmentExpense_lbl" xml:lang="en-US">Funding amount</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquipmentExpense" xlink:to="us-gaap_EquipmentExpense_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_RevenueRecognitionMilestoneMethodRevenuesRecognized" xlink:href="esp-20230630.xsd#esp_RevenueRecognitionMilestoneMethodRevenuesRecognized"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_RevenueRecognitionMilestoneMethodRevenuesRecognized_lbl" xml:lang="en-US">Revenue recognition, Milestone method, Revenues recognized</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_RevenueRecognitionMilestoneMethodRevenuesRecognized" xlink:to="esp_RevenueRecognitionMilestoneMethodRevenuesRecognized_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PensionAndOtherPostretirementBenefitExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PensionAndOtherPostretirementBenefitExpense"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PensionAndOtherPostretirementBenefitExpense_lbl" xml:lang="en-US">Defined benefit contributions and expenses</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PensionAndOtherPostretirementBenefitExpense" xlink:to="us-gaap_PensionAndOtherPostretirementBenefitExpense_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_MultiemployerPlanPensionSignificantPlanContribution" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MultiemployerPlanPensionSignificantPlanContribution"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_MultiemployerPlanPensionSignificantPlanContribution_lbl" xml:lang="en-US">Expenses contributions</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MultiemployerPlanPensionSignificantPlanContribution" xlink:to="us-gaap_MultiemployerPlanPensionSignificantPlanContribution_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_lbl" xml:lang="en-US">Percentage of employer contribution</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:to="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_DefinedContributionPlanEmployersMatchingContribution" xlink:href="esp-20230630.xsd#esp_DefinedContributionPlanEmployersMatchingContribution"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_DefinedContributionPlanEmployersMatchingContribution_lbl" xml:lang="en-US">Employee contribution</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DefinedContributionPlanEmployersMatchingContribution" xlink:to="esp_DefinedContributionPlanEmployersMatchingContribution_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_ConcentrationRiskPercentageOne" xlink:href="esp-20230630.xsd#esp_ConcentrationRiskPercentageOne"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_ConcentrationRiskPercentageOne_lbl" xml:lang="en-US">Concentration risk percentage</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ConcentrationRiskPercentageOne" xlink:to="esp_ConcentrationRiskPercentageOne_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="esp_ConcentrationRiskPercentageOne_lbl0" xml:lang="en-US">Trade accounts receivable balance</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ConcentrationRiskPercentageOne" xlink:to="esp_ConcentrationRiskPercentageOne_lbl0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SalesTypeLeaseRevenue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SalesTypeLeaseRevenue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SalesTypeLeaseRevenue_lbl" xml:lang="en-US">Sales (in Dollars)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SalesTypeLeaseRevenue" xlink:to="us-gaap_SalesTypeLeaseRevenue_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPPlanDescription" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOwnershipPlanESOPPlanDescription"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPPlanDescription_lbl" xml:lang="en-US">Employee stock ownership plan (ESOP)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPPlanDescription" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPPlanDescription_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl" xml:lang="en-US">Interest rate on loan</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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</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="us-gaap_AllocatedShareBasedCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_lbl" xml:lang="en-US">Deferred tax benefit related to stock based compensation</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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 costs</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/2023/elts/us-gaap-2023.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="esp_DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts" xlink:href="esp-20230630.xsd#esp_DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts_lbl" xml:lang="en-US">Deferred tax benefit related to unrecognized compensation costs</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts" xlink:to="esp_DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="esp_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear" xlink:href="esp-20230630.xsd#esp_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear_lbl" xml:lang="en-US">Vesting period (in Shares)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear" xlink:to="esp_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear" xlink:href="esp-20230630.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/2023/elts/us-gaap-2023.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="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber" xlink:href="esp-20230630.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="us-gaap_CommonStockDividendsPerShareDeclared" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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">Common stock 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="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="esp_ConcentrationRiskNumberOfCustomers" xlink:href="esp-20230630.xsd#esp_ConcentrationRiskNumberOfCustomers"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_ConcentrationRiskNumberOfCustomers_lbl" xml:lang="en-US">Represented customers</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ConcentrationRiskNumberOfCustomers" xlink:to="esp_ConcentrationRiskNumberOfCustomers_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LossContingencyAccrualAtCarryingValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyAccrualAtCarryingValue"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LossContingencyAccrualAtCarryingValue_lbl" xml:lang="en-US">Contingent liabilities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LossContingencyAccrualAtCarryingValue" xlink:to="us-gaap_LossContingencyAccrualAtCarryingValue_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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">Purchase shares of common stock</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_DividendsCash" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DividendsCash"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DividendsCash_lbl" xml:lang="en-US">Cash dividends (in Dollars)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendsCash" xlink:to="us-gaap_DividendsCash_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl" xml:lang="en-US">Maximum amount of line of credit</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_lbl" xml:lang="en-US">Daily floating rate</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:to="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_lbl"/>
<!-- [WMV5][XcpuxYn59dz7vgYynUDuwG7r97K2jUTysl7vcz0lJt/tSeJz73kx1cLt0ZFF2SK/vxBCY0vdSrYnt/FcukLonGvrL5wMA+ofwaqo4qMNOuQCZ4f5MsVOmOOAhEIki8WPj8IecsZEAIH93EFFuU1YNbJ9bq3A8pyccr+4dZb24XmdvHCn85JsH7H0AtPOV2WmLkVDPf9RD329k5Bn5/FaLlBT8+9s8oe2tmloh3coIpwefdJI6BJX3jveRxOVHXUzNWLk9gC5sWj3tAbMPZ/pRB2wQyWjQC00JwKyrAk92JrjpIXi2vaUbA==] CSR-->
    <loc xlink:type="locator" xlink:label="us-gaap_RevenueRecognitionPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRecognitionPolicyTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_RevenueRecognitionPolicyTextBlock_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_RevenueRecognitionPolicyTextBlock" xlink:to="us-gaap_RevenueRecognitionPolicyTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryPolicyTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InventoryPolicyTextBlock_lbl" xml:lang="en-US">Inventory</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryPolicyTextBlock" xlink:to="us-gaap_InventoryPolicyTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_ContractLiabilitiesPolicyTextBlock" xlink:href="esp-20230630.xsd#esp_ContractLiabilitiesPolicyTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_ContractLiabilitiesPolicyTextBlock_lbl" xml:lang="en-US">Contract Liabilities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ContractLiabilitiesPolicyTextBlock" xlink:to="esp_ContractLiabilitiesPolicyTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock_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_DepreciationDepletionAndAmortizationPolicyTextBlock" xlink:to="us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxPolicyTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncomeTaxPolicyTextBlock_lbl" xml:lang="en-US">Income Taxes</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxPolicyTextBlock" xlink:to="us-gaap_IncomeTaxPolicyTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock_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_CashAndCashEquivalentsPolicyTextBlock" xlink:to="us-gaap_CashAndCashEquivalentsPolicyTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentPolicyTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InvestmentPolicyTextBlock_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_InvestmentPolicyTextBlock" xlink:to="us-gaap_InvestmentPolicyTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FairValueOfFinancialInstrumentsPolicy_lbl" xml:lang="en-US">Fair Value of Financial Instruments</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:to="us-gaap_FairValueOfFinancialInstrumentsPolicy_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TradeAndOtherAccountsReceivablePolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TradeAndOtherAccountsReceivablePolicy"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_TradeAndOtherAccountsReceivablePolicy_lbl" xml:lang="en-US">Accounts Receivable and Allowance for Doubtful Accounts</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TradeAndOtherAccountsReceivablePolicy" xlink:to="us-gaap_TradeAndOtherAccountsReceivablePolicy_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerSharePolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerSharePolicyTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EarningsPerSharePolicyTextBlock_lbl" xml:lang="en-US">Per Share Amounts</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerSharePolicyTextBlock" xlink:to="us-gaap_EarningsPerSharePolicyTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomePolicyPolicyTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock_lbl" xml:lang="en-US">Comprehensive Income</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" xlink:to="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_UseOfEstimates" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UseOfEstimates"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_UseOfEstimates_lbl" xml:lang="en-US">Use of Estimates</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UseOfEstimates" xlink:to="us-gaap_UseOfEstimates_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_RecentlyIssuedAccountingStandardsPolicyTextBlock" xlink:href="esp-20230630.xsd#esp_RecentlyIssuedAccountingStandardsPolicyTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_RecentlyIssuedAccountingStandardsPolicyTextBlock_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="esp_RecentlyIssuedAccountingStandardsPolicyTextBlock" xlink:to="esp_RecentlyIssuedAccountingStandardsPolicyTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl" xml:lang="en-US">Recent Accounting Pronouncements Not Yet Adopted</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_lbl" xml:lang="en-US">Impairment of Long-Lived Assets</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:to="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskCreditRisk" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskCreditRisk"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ConcentrationRiskCreditRisk_lbl" xml:lang="en-US">Concentrations of Risk</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskCreditRisk" xlink:to="us-gaap_ConcentrationRiskCreditRisk_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_UnitsDeliveredMember" xlink:href="esp-20230630.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-20230630.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-20230630.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/2023/elts/us-gaap-2023.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="us-gaap_SalesRevenueNetMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SalesRevenueNetMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_SalesRevenueNetMember_lbl" xml:lang="en-US">Revenue Benchmark [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SalesRevenueNetMember" xlink:to="us-gaap_SalesRevenueNetMember_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_GeographicConcentrationRiskMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GeographicConcentrationRiskMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_GeographicConcentrationRiskMember_lbl" xml:lang="en-US">Geographic Concentration Risk [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GeographicConcentrationRiskMember" xlink:to="us-gaap_GeographicConcentrationRiskMember_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountsReceivableMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AccountsReceivableMember_lbl" xml:lang="en-US">Accounts Receivable [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableMember" xlink:to="us-gaap_AccountsReceivableMember_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_GeographicConcentrationRisk1Member" xlink:href="esp-20230630.xsd#esp_GeographicConcentrationRisk1Member"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_GeographicConcentrationRisk1Member_lbl" xml:lang="en-US">Foreign Customers [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_GeographicConcentrationRisk1Member" xlink:to="esp_GeographicConcentrationRisk1Member_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_EmployeeStockOwnershipPlanMember" xlink:href="esp-20230630.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="esp_NonQualifiedStockOptionsMember" xlink:href="esp-20230630.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"/>
    <loc xlink:type="locator" xlink:label="esp_IncentiveStockOptionMember" xlink:href="esp-20230630.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-20230630.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-20230630.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="esp_IndividualEmployeeMember" xlink:href="esp-20230630.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/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOptionMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EmployeeStockOptionMember_lbl" xml:lang="en-US">Share-Based Payment Arrangement, Option [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-20230630.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-20230630.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="us-gaap_TradeAccountsReceivableMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TradeAccountsReceivableMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_TradeAccountsReceivableMember_lbl" xml:lang="en-US">Trade Accounts Receivable [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TradeAccountsReceivableMember" xlink:to="us-gaap_TradeAccountsReceivableMember_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StandbyLettersOfCreditMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StandbyLettersOfCreditMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StandbyLettersOfCreditMember_lbl" xml:lang="en-US">Standby Letters of Credit [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandbyLettersOfCreditMember" xlink:to="us-gaap_StandbyLettersOfCreditMember_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_LondonInterbankOfferedRatesLIBORMember" xlink:href="esp-20230630.xsd#esp_LondonInterbankOfferedRatesLIBORMember"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_LondonInterbankOfferedRatesLIBORMember_lbl" xml:lang="en-US">London Interbank Offered Rates (LIBOR) [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_LondonInterbankOfferedRatesLIBORMember" xlink:to="esp_LondonInterbankOfferedRatesLIBORMember_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EquityComponentDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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="esp_EmployeeStockOwnershipPlanTablesTable" xlink:href="esp-20230630.xsd#esp_EmployeeStockOwnershipPlanTablesTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_EmployeeStockOwnershipPlanTablesTable_lbl" xml:lang="en-US">Employee Stock Ownership Plan (Tables) [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_EmployeeStockOwnershipPlanTablesTable" xlink:to="esp_EmployeeStockOwnershipPlanTablesTable_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_EmployeeStockOwnershipPlanTablesLineItems" xlink:href="esp-20230630.xsd#esp_EmployeeStockOwnershipPlanTablesLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="esp_EmployeeStockOwnershipPlanTablesLineItems_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="esp_EmployeeStockOwnershipPlanTablesLineItems" xlink:to="esp_EmployeeStockOwnershipPlanTablesLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationTablesTable" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationTablesTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_StockBasedCompensationTablesTable_lbl" xml:lang="en-US">Stock-Based Compensation (Tables) [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_StockBasedCompensationTablesTable" xlink:to="esp_StockBasedCompensationTablesTable_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationTablesLineItems" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationTablesLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_StockBasedCompensationTablesLineItems_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="esp_StockBasedCompensationTablesLineItems" xlink:to="esp_StockBasedCompensationTablesLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain_lbl" xml:lang="en-US">Long-Lived Tangible Asset [Domain]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain_lbl"/>
    <loc xlink:type="locator" xlink:label="srt_RangeMember" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable" xlink:href="esp-20230630.xsd#esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable_lbl" xml:lang="en-US">Summary of Significant Accounting Policies (Details) - Schedule of the Estimated Useful Lives of Depreciable Assets [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable" xlink:to="esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems" xlink:href="esp-20230630.xsd#esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems_lbl" xml:lang="en-US">Summary of Significant Accounting Policies (Details) - Schedule of the Estimated Useful Lives of Depreciable Assets [Line Items]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems" xlink:to="esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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 Available-for-Sale Securities [Abstract]</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="esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesTable" xlink:href="esp-20230630.xsd#esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesTable_lbl" xml:lang="en-US">Investment Securities (Details) - Schedule of Contractual Maturities [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesTable" xlink:to="esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesTable_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems" xlink:href="esp-20230630.xsd#esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems_lbl" xml:lang="en-US">Schedule of Contractual Maturities [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems" xlink:to="esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_lbl" xml:lang="en-US">Property, Plant and Equipment [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems_lbl" xml:lang="en-US">Property, Plant and Equipment [Line Items]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTable_lbl" xml:lang="en-US">Schedule of Employee Stock Ownership Plan (ESOP) Disclosures [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTable" xlink:to="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTable_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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">Schedule of ESOP Shares [Abstract]</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"/>
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsTable" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsTable_lbl" xml:lang="en-US">Stock-Based Compensation (Details) - Schedule of Weighted Average Assumptions for Option Awards [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsTable" xlink:to="esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsTable_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems_lbl" xml:lang="en-US">Schedule of Fair Value Assumptions [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems" xlink:to="esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityTable" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsScheduleofStockOptionActivityTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityTable_lbl" xml:lang="en-US">Stock-Based Compensation (Details) - Schedule of Stock Option Activity [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityTable" xlink:to="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityTable_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems_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_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsTable" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsTable_lbl" xml:lang="en-US">Stock-Based Compensation (Details) - Schedule of Changes in Non-Vested Stock Options [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsTable" xlink:to="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsTable_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems_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="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" xlink:to="esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceTable" xlink:href="esp-20230630.xsd#esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceTable_lbl" xml:lang="en-US">Schedule of Reserved Common Shares for Future Issuance [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceTable" xlink:to="esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceTable_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems" xlink:href="esp-20230630.xsd#esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems_lbl" xml:lang="en-US">Stockholders&apos; Equity (Details) - Schedule of Reserved Common Shares for Future Issuance [Line Items]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems" xlink:to="esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable" xlink:href="esp-20230630.xsd#esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable_lbl" xml:lang="en-US">Schedule of Reconciliation of the Numerators and Denominators of the Basic and Diluted Earnings Per Share Computations [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable" xlink:to="esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems" xlink:href="esp-20230630.xsd#esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems_lbl" xml:lang="en-US">Stockholders&apos; Equity (Details) - Schedule of Reconciliation of the Numerators and Denominators of the Basic and Diluted Earnings Per Share Computations [Line Items]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems" xlink:to="esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_QuarterlyFinancialInformationDomainDomain" xlink:href="esp-20230630.xsd#esp_QuarterlyFinancialInformationDomainDomain"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_QuarterlyFinancialInformationDomainDomain_lbl" xml:lang="en-US">QuarterlyFinancialInformationDomain [Domain]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_QuarterlyFinancialInformationDomainDomain" xlink:to="esp_QuarterlyFinancialInformationDomainDomain_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationTable" xlink:href="esp-20230630.xsd#esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationTable_lbl" xml:lang="en-US">Quarterly Financial Information (Unaudited) (Details) - Schedule of Quarterly Financial Information [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationTable" xlink:to="esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationTable_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems" xlink:href="esp-20230630.xsd#esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems_lbl" xml:lang="en-US">Schedule of Quarterly Financial Information [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems" xlink:to="esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="us-gaap_TypeOfAdoptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="esp_RevenueDetailsTable" xlink:href="esp-20230630.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="esp_RevenueDetailsLineItems" xlink:href="esp-20230630.xsd#esp_RevenueDetailsLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_RevenueDetailsLineItems_lbl" xml:lang="en-US">Revenue (Details) [Line Items]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_RevenueDetailsLineItems" xlink:to="esp_RevenueDetailsLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_PropertyPlantandEquipmentDetailsTable" xlink:href="esp-20230630.xsd#esp_PropertyPlantandEquipmentDetailsTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_PropertyPlantandEquipmentDetailsTable_lbl" xml:lang="en-US">Property, Plant and Equipment (Details) [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_PropertyPlantandEquipmentDetailsTable" xlink:to="esp_PropertyPlantandEquipmentDetailsTable_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_PropertyPlantandEquipmentDetailsLineItems" xlink:href="esp-20230630.xsd#esp_PropertyPlantandEquipmentDetailsLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_PropertyPlantandEquipmentDetailsLineItems_lbl" xml:lang="en-US">Property, Plant and Equipment (Details) [Line Items]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_PropertyPlantandEquipmentDetailsLineItems" xlink:to="esp_PropertyPlantandEquipmentDetailsLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain_lbl" xml:lang="en-US">Concentration Risk Benchmark [Domain]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConcentrationRiskTypeDomain_lbl" xml:lang="en-US">Concentration Risk Type [Domain]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_ConcentrationRiskTypeDomain_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_SignificantCustomersDetailsTable" xlink:href="esp-20230630.xsd#esp_SignificantCustomersDetailsTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_SignificantCustomersDetailsTable_lbl" xml:lang="en-US">Significant Customers (Details) [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_SignificantCustomersDetailsTable" xlink:to="esp_SignificantCustomersDetailsTable_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_SignificantCustomersDetailsLineItems" xlink:href="esp-20230630.xsd#esp_SignificantCustomersDetailsLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_SignificantCustomersDetailsLineItems_lbl" xml:lang="en-US">Significant Customers (Details) [Line Items]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_SignificantCustomersDetailsLineItems" xlink:to="esp_SignificantCustomersDetailsLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPPlanDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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-20230630.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="esp_EmployeeStockOwnershipPlanDetailsLineItems" xlink:href="esp-20230630.xsd#esp_EmployeeStockOwnershipPlanDetailsLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_EmployeeStockOwnershipPlanDetailsLineItems_lbl" xml:lang="en-US">Employee Stock Ownership Plan (Details) [Line Items]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_EmployeeStockOwnershipPlanDetailsLineItems" xlink:to="esp_EmployeeStockOwnershipPlanDetailsLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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 of Individual [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/2023/elts/us-gaap-2023.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="esp_StockBasedCompensationDetailsTable" xlink:href="esp-20230630.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="esp_StockBasedCompensationDetailsLineItems" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_StockBasedCompensationDetailsLineItems_lbl" xml:lang="en-US">Stock-Based Compensation (Details) [Line Items]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_StockBasedCompensationDetailsLineItems" xlink:to="esp_StockBasedCompensationDetailsLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_ConcentrationofCreditRiskDetailsTable" xlink:href="esp-20230630.xsd#esp_ConcentrationofCreditRiskDetailsTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ConcentrationofCreditRiskDetailsTable_lbl" xml:lang="en-US">Concentration of Credit Risk (Details) [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ConcentrationofCreditRiskDetailsTable" xlink:to="esp_ConcentrationofCreditRiskDetailsTable_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_ConcentrationofCreditRiskDetailsLineItems" xlink:href="esp-20230630.xsd#esp_ConcentrationofCreditRiskDetailsLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ConcentrationofCreditRiskDetailsLineItems_lbl" xml:lang="en-US">Concentration of Credit Risk (Details) [Line Items]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ConcentrationofCreditRiskDetailsLineItems" xlink:to="esp_ConcentrationofCreditRiskDetailsLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LossContingencyNatureDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyNatureDomain"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LossContingencyNatureDomain_lbl" xml:lang="en-US">Loss Contingency, Nature [Domain]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LossContingencyNatureDomain" xlink:to="us-gaap_LossContingencyNatureDomain_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_CommitmentsandContingenciesDetailsTable" xlink:href="esp-20230630.xsd#esp_CommitmentsandContingenciesDetailsTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_CommitmentsandContingenciesDetailsTable_lbl" xml:lang="en-US">Commitments and Contingencies (Details) [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_CommitmentsandContingenciesDetailsTable" xlink:to="esp_CommitmentsandContingenciesDetailsTable_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_CommitmentsandContingenciesDetailsLineItems" xlink:href="esp-20230630.xsd#esp_CommitmentsandContingenciesDetailsLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_CommitmentsandContingenciesDetailsLineItems_lbl" xml:lang="en-US">Commitments and Contingencies (Details) [Line Items]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_CommitmentsandContingenciesDetailsLineItems" xlink:to="esp_CommitmentsandContingenciesDetailsLineItems_lbl"/>
    <loc xlink:type="locator" xlink:label="us-gaap_VariableRateDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateDomain"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_VariableRateDomain_lbl" xml:lang="en-US">Variable Rate [Domain]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_VariableRateDomain" xlink:to="us-gaap_VariableRateDomain_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_LineofCreditDetailsTable" xlink:href="esp-20230630.xsd#esp_LineofCreditDetailsTable"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_LineofCreditDetailsTable_lbl" xml:lang="en-US">Line of Credit (Details) [Table]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_LineofCreditDetailsTable" xlink:to="esp_LineofCreditDetailsTable_lbl"/>
    <loc xlink:type="locator" xlink:label="esp_LineofCreditDetailsLineItems" xlink:href="esp-20230630.xsd#esp_LineofCreditDetailsLineItems"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_LineofCreditDetailsLineItems_lbl" xml:lang="en-US">Line of Credit (Details) [Line Items]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_LineofCreditDetailsLineItems" xlink:to="esp_LineofCreditDetailsLineItems_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_ConcentrationRiskNumberOfCustomers_lbl0" xml:lang="en-US">The number of customers specifically identified in disclosure of concentration risk.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ConcentrationRiskNumberOfCustomers" xlink:to="esp_ConcentrationRiskNumberOfCustomers_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_ConcentrationRiskPercentageOne_lbl1" xml:lang="en-US">For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the &quot;benchmark&quot; (or denominator) in the equation, this concept represents the concentration percentage derived from the division.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ConcentrationRiskPercentageOne" xlink:to="esp_ConcentrationRiskPercentageOne_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_ContractLiabilitiesPolicyTextBlock_lbl0" xml:lang="en-US">Disclosure of accounting policy for contract liabilities.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ContractLiabilitiesPolicyTextBlock" xlink:to="esp_ContractLiabilitiesPolicyTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_DeferredIncomeTaxesExpenseBenefit_lbl0" xml:lang="en-US">Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DeferredIncomeTaxesExpenseBenefit" xlink:to="esp_DeferredIncomeTaxesExpenseBenefit_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_DeferredTaxAssetLiability_lbl0" xml:lang="en-US">Net deferred tax asset (liability).</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DeferredTaxAssetLiability" xlink:to="esp_DeferredTaxAssetLiability_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts_lbl0" xml:lang="en-US">Amount of deferred tax benefit attributable to unrecognized share-based compensation.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts" xlink:to="esp_DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_DeferredTaxLiability_lbl0" xml:lang="en-US">Deferred tax liabilities as of the balance sheet date.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DeferredTaxLiability" xlink:to="esp_DeferredTaxLiability_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_DefinedContributionPlanEmployersMatchingContribution_lbl0" xml:lang="en-US">Amount of contributions which the employer contributes in a matching contribution to a defined contribution plan.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DefinedContributionPlanEmployersMatchingContribution" xlink:to="esp_DefinedContributionPlanEmployersMatchingContribution_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_EffectiveIncomeTaxRateReconciliationESOPFairValue_lbl0" xml:lang="en-US">The portion of the difference between the effective income tax rate and domestic federal statutory income tax rate attributable to differences in ESOP fair value.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_EffectiveIncomeTaxRateReconciliationESOPFairValue" xlink:to="esp_EffectiveIncomeTaxRateReconciliationESOPFairValue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback_lbl0" xml:lang="en-US">Rate differential on net oPercentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to rate Differential on net operating loss carryback.perating loss carryback.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback" xlink:to="esp_EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback_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_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_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear_lbl0" xml:lang="en-US">The number of shares subject to option or award in a single fiscal year as outlined in the plan contract.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear" xlink:to="esp_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_PensionExpenseTextBlock_lbl0" xml:lang="en-US">The entire disclosure for pension expense.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_PensionExpenseTextBlock" xlink:to="esp_PensionExpenseTextBlock_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_RecentlyIssuedAccountingStandardsPolicyTextBlock_lbl0" xml:lang="en-US">Disclosure of accounting policy pertaining to new accounting standards that may impact the entity&apos;s financial reporting.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_RecentlyIssuedAccountingStandardsPolicyTextBlock" xlink:to="esp_RecentlyIssuedAccountingStandardsPolicyTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_RevenueRecognitionMilestoneMethodRevenuesRecognized_lbl0" xml:lang="en-US">Revenue Recognition, Milestone Method, Revenue Recognized</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_RevenueRecognitionMilestoneMethodRevenuesRecognized" xlink:to="esp_RevenueRecognitionMilestoneMethodRevenuesRecognized_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_ScheduleOfContractsInProcessTableTextBlock_lbl0" xml:lang="en-US">Schedule of contracts in process.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfContractsInProcessTableTextBlock" xlink:to="esp_ScheduleOfContractsInProcessTableTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock_lbl0" xml:lang="en-US">Tabular disclosure of estimated useful lives of depreciable assets.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock" xlink:to="esp_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock_lbl0" xml:lang="en-US">The schedule of common shares reserved for future issuance as stock option awards.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock" xlink:to="esp_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod_lbl0" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod" xlink:to="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm_lbl0" xml:lang="en-US">The contractual life of stock options under the Company&apos;s plans.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm" xlink:to="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_SignificantCustomersTextBlock_lbl0" xml:lang="en-US">The disclosure for revenues in the period from one or more significant customers.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_SignificantCustomersTextBlock" xlink:to="esp_SignificantCustomersTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="esp_StockIssuedDuringPeriodSharesStockOptionExercised_lbl0" 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_StockIssuedDuringPeriodSharesStockOptionExercised" xlink:to="esp_StockIssuedDuringPeriodSharesStockOptionExercised_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_USFederalStatutoryIncomeTaxRate_lbl0" xml:lang="en-US">U.S. federal statutory income tax rate.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_USFederalStatutoryIncomeTaxRate" xlink:to="esp_USFederalStatutoryIncomeTaxRate_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_UnrecognizedGrossContractValue_lbl0" xml:lang="en-US">Unrecognized gross contract value.</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnrecognizedGrossContractValue" xlink:to="esp_UnrecognizedGrossContractValue_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_GeographicConcentrationRisk1Member_lbl0" xml:lang="en-US">Reflects the percentage that a specified dollar value on the balance sheet or income statement in the period from one or more specified geographic areas is to a corresponding consolidated, segment, or product line amount. Risk is the materially adverse effects of economic decline or antagonistic political actions resulting in loss of assets, sales volume, labor supply, or source of materials and supplies in a US state or a specified country, continent, or region such as EMEA (Europe, Middle East, Africa).</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_GeographicConcentrationRisk1Member" xlink:to="esp_GeographicConcentrationRisk1Member_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_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"/>
    <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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther_lbl0" xml:lang="en-US">Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Other</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract_lbl0" xml:lang="en-US">Supplemental Cash Flow Information [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract_lbl0"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfEsopSharesAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfEsopSharesAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ScheduleOfEsopSharesAbstract_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="esp_ScheduleOfEsopSharesAbstract" xlink:to="esp_ScheduleOfEsopSharesAbstract_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Exercisable, Aggregate Intrinsic Value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InvestmentPolicyTextBlock_lbl0" xml:lang="en-US">Investment, Policy [Policy Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentPolicyTextBlock" xlink:to="us-gaap_InvestmentPolicyTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock_lbl0" xml:lang="en-US">Depreciation, Depletion, and Amortization [Policy Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock" xlink:to="us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock_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"/>
    <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_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="dei_AuditorName_lbl0" xml:lang="en-US">Auditor Name</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorName" xlink:to="dei_AuditorName_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityWellKnownSeasonedIssuer_lbl0" xml:lang="en-US">Entity Well-known Seasoned Issuer</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityWellKnownSeasonedIssuer" xlink:to="dei_EntityWellKnownSeasonedIssuer_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityFileNumber_lbl0" xml:lang="en-US">Entity File Number</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFileNumber" xlink:to="dei_EntityFileNumber_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntitySmallBusiness_lbl0" xml:lang="en-US">Entity Small Business</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness_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_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_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_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_WeightedAverageNumberOfSharesOutstandingBasic_lbl1" 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_lbl1"/>
    <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="us-gaap_MultiemployerPlanPensionSignificantPlanContribution_lbl0" xml:lang="en-US">Multiemployer Plan, Pension, Significant, Plan Contribution</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MultiemployerPlanPensionSignificantPlanContribution" xlink:to="us-gaap_MultiemployerPlanPensionSignificantPlanContribution_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SalesTypeLeaseRevenue_lbl0" xml:lang="en-US">Sales-type Lease, Revenue</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SalesTypeLeaseRevenue" xlink:to="us-gaap_SalesTypeLeaseRevenue_lbl0"/>
    <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_StockholdersEquityNoteDisclosureTextBlock_lbl0" xml:lang="en-US">Equity [Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:to="us-gaap_StockholdersEquityNoteDisclosureTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_a2022Abstract_lbl0" xml:lang="en-US">a2022 Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_a2022Abstract" xlink:to="esp_a2022Abstract_lbl0"/>
    <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_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="dei_LocalPhoneNumber_lbl0" xml:lang="en-US">Local Phone Number</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable_lbl0" xml:lang="en-US">Increase (Decrease) in Accounts Payable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ConcentrationRiskPercentageOne_lbl2" xml:lang="en-US">Concentration Risk Percentage One</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ConcentrationRiskPercentageOne" xlink:to="esp_ConcentrationRiskPercentageOne_lbl2"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested Options Forfeited, Number of Shares</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_lbl1" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Option, Nonvested, Weighted Average Exercise Price</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_June302023Abstract_lbl0" xml:lang="en-US">June302023 Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_June302023Abstract" xlink:to="esp_June302023Abstract_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="dei_EntityCommonStockSharesOutstanding_lbl0" xml:lang="en-US">Entity Common Stock, Shares Outstanding</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareDiluted_lbl0" xml:lang="en-US">Earnings Per Share, Diluted</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RetainedEarningsMember_lbl0" xml:lang="en-US">Retained Earnings [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsMember" xlink:to="us-gaap_RetainedEarningsMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_SecondQuarterMember_lbl0" xml:lang="en-US">Second Quarter Member</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_SecondQuarterMember" xlink:to="esp_SecondQuarterMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract18_lbl0" xml:lang="en-US">Unlabeled Abstract18</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract18" xlink:to="esp_UnlabeledAbstract18_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract19_lbl0" xml:lang="en-US">Unlabeled Abstract19</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract19" xlink:to="esp_UnlabeledAbstract19_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract16_lbl0" xml:lang="en-US">Unlabeled Abstract16</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract16" xlink:to="esp_UnlabeledAbstract16_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="esp_UnlabeledAbstract17_lbl0" xml:lang="en-US">Unlabeled Abstract17</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract17" xlink:to="esp_UnlabeledAbstract17_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="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_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_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_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="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_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_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="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_SignificantAccountingPoliciesTextBlock_lbl0" xml:lang="en-US">Significant Accounting Policies [Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine1_lbl0" xml:lang="en-US">Entity Address, Address Line One</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract21_lbl0" xml:lang="en-US">Unlabeled Abstract21</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract21" xlink:to="esp_UnlabeledAbstract21_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract22_lbl0" xml:lang="en-US">Unlabeled Abstract22</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract22" xlink:to="esp_UnlabeledAbstract22_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="dei_EntityIncorporationStateCountryCode_lbl0" xml:lang="en-US">Entity Incorporation, State or Country Code</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SecurityExchangeName_lbl0" xml:lang="en-US">Security Exchange Name</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityExchangeName" xlink:to="dei_SecurityExchangeName_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract20_lbl0" xml:lang="en-US">Unlabeled Abstract20</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract20" xlink:to="esp_UnlabeledAbstract20_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_lbl0" xml:lang="en-US">Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Share-Based Compensation Cost</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract25_lbl0" xml:lang="en-US">Unlabeled Abstract25</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract25" xlink:to="esp_UnlabeledAbstract25_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_UnlabeledAbstract26_lbl0" xml:lang="en-US">Unlabeled Abstract26</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract26" xlink:to="esp_UnlabeledAbstract26_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract23_lbl0" xml:lang="en-US">Unlabeled Abstract23</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract23" xlink:to="esp_UnlabeledAbstract23_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract24_lbl0" xml:lang="en-US">Unlabeled Abstract24</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract24" xlink:to="esp_UnlabeledAbstract24_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl2" xml:lang="en-US">Common Stock, Shares, Outstanding</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesOutstanding" xlink:to="us-gaap_CommonStockSharesOutstanding_lbl2"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherIncomeAbstract_lbl0" xml:lang="en-US">Component of Operating Income [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherIncomeAbstract" xlink:to="us-gaap_OtherIncomeAbstract_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_UnlabeledAbstract27_lbl0" xml:lang="en-US">Unlabeled Abstract27</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract27" xlink:to="esp_UnlabeledAbstract27_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_MinimumMember_lbl0" xml:lang="en-US">Minimum [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MinimumMember" xlink:to="srt_MinimumMember_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_Depreciation_lbl1" 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_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxesReceivable_lbl0" xml:lang="en-US">Income Taxes Receivable, Current</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxesReceivable" xlink:to="us-gaap_IncomeTaxesReceivable_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfSharesContingentlyIssuable_lbl0" xml:lang="en-US">Weighted Average Number of Shares, Contingently Issuable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesContingentlyIssuable" xlink:to="us-gaap_WeightedAverageNumberOfSharesContingentlyIssuable_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_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_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_ConcentrationRiskCreditRisk_lbl0" xml:lang="en-US">Concentration Risk, Credit Risk, Policy [Policy Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskCreditRisk" xlink:to="us-gaap_ConcentrationRiskCreditRisk_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Security12bTitle_lbl0" xml:lang="en-US">Title of 12(b) Security</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12bTitle" xlink:to="dei_Security12bTitle_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="esp_EmployeeStockOwnershipPlanTablesLineItems_lbl0" xml:lang="en-US">Employee Stock Ownership Plan Tables Line Items</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_EmployeeStockOwnershipPlanTablesLineItems" xlink:to="esp_EmployeeStockOwnershipPlanTablesLineItems_lbl0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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">Share-Based Payment Arrangement [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"/>
    <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_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_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_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_EmployeeStockOptionMember_lbl0" xml:lang="en-US">Share-Based Payment Arrangement, Option [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_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl1" 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_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnrecognizedGrossContractValue_lbl1" xml:lang="en-US">Unrecognized Gross Contract Value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnrecognizedGrossContractValue" xlink:to="esp_UnrecognizedGrossContractValue_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxPolicyTextBlock_lbl0" xml:lang="en-US">Income Tax, Policy [Policy Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxPolicyTextBlock" xlink:to="us-gaap_IncomeTaxPolicyTextBlock_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_DebtDisclosureTextBlock_lbl0" xml:lang="en-US">Debt Disclosure [Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDisclosureTextBlock" xlink:to="us-gaap_DebtDisclosureTextBlock_lbl0"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfWeightedAverageAssumptionsForOptionAwardsAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfWeightedAverageAssumptionsForOptionAwardsAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ScheduleOfWeightedAverageAssumptionsForOptionAwardsAbstract_lbl" xml:lang="en-US">Schedule Of Weighted Average Assumptions For Option Awards Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfWeightedAverageAssumptionsForOptionAwardsAbstract" xlink:to="esp_ScheduleOfWeightedAverageAssumptionsForOptionAwardsAbstract_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TradeAndOtherAccountsReceivablePolicy_lbl0" xml:lang="en-US">Accounts Receivable [Policy Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TradeAndOtherAccountsReceivablePolicy" xlink:to="us-gaap_TradeAndOtherAccountsReceivablePolicy_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_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="esp_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock_lbl1" xml:lang="en-US">Schedule Of Estimated Useful Lives Of Depreciable Assets Table Text Block</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock" xlink:to="esp_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_lbl1" 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_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" 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/label" xlink:label="esp_StockIssuedDuringPeriodSharesStockOptionExercised_lbl1" xml:lang="en-US">Stock Issued During Period Shares Stock Option Exercised</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_StockIssuedDuringPeriodSharesStockOptionExercised" xlink:to="esp_StockIssuedDuringPeriodSharesStockOptionExercised_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock_lbl1" xml:lang="en-US">Schedule Of Reserved Common Shares For Future Issuance Table Text Block</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock" xlink:to="esp_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock_lbl1"/>
    <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="esp_UnlabeledAbstract10_lbl0" xml:lang="en-US">Unlabeled Abstract10</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract10" xlink:to="esp_UnlabeledAbstract10_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract11_lbl0" xml:lang="en-US">Unlabeled Abstract11</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract11" xlink:to="esp_UnlabeledAbstract11_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="esp_UnlabeledAbstract14_lbl0" xml:lang="en-US">Unlabeled Abstract14</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract14" xlink:to="esp_UnlabeledAbstract14_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract15_lbl0" xml:lang="en-US">Unlabeled Abstract15</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract15" xlink:to="esp_UnlabeledAbstract15_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract12_lbl0" xml:lang="en-US">Unlabeled Abstract12</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract12" xlink:to="esp_UnlabeledAbstract12_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract13_lbl0" xml:lang="en-US">Unlabeled Abstract13</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract13" xlink:to="esp_UnlabeledAbstract13_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FurnitureAndFixturesMember_lbl0" xml:lang="en-US">Furniture and Fixtures [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FurnitureAndFixturesMember" xlink:to="us-gaap_FurnitureAndFixturesMember_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_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_IncomeLossAttributableToParent_lbl0" xml:lang="en-US">Income (Loss) Attributable to Parent, before Tax</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossAttributableToParent" xlink:to="us-gaap_IncomeLossAttributableToParent_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_BacklogPercentageOfRecognitionsYearThree_lbl1" xml:lang="en-US">Backlog Percentage Of Recognitions Year Three</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_BacklogPercentageOfRecognitionsYearThree" xlink:to="esp_BacklogPercentageOfRecognitionsYearThree_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccruedPayrollTaxesCurrent_lbl0" xml:lang="en-US">Accrued Payroll Taxes, Current</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedPayrollTaxesCurrent" xlink:to="us-gaap_AccruedPayrollTaxesCurrent_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract2_lbl0" xml:lang="en-US">Unlabeled Abstract2</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract2" xlink:to="esp_UnlabeledAbstract2_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract1_lbl0" xml:lang="en-US">Unlabeled Abstract1</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract1" xlink:to="esp_UnlabeledAbstract1_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract4_lbl0" xml:lang="en-US">Unlabeled Abstract4</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract4" xlink:to="esp_UnlabeledAbstract4_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="esp_UnlabeledAbstract3_lbl0" xml:lang="en-US">Unlabeled Abstract3</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract3" xlink:to="esp_UnlabeledAbstract3_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl0" xml:lang="en-US">AOCI Attributable to Parent [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_June302022Abstract_lbl0" xml:lang="en-US">June302022 Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_June302022Abstract" xlink:to="esp_June302022Abstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract0_lbl0" xml:lang="en-US">Unlabeled Abstract0</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract0" xlink:to="esp_UnlabeledAbstract0_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_lbl0" xml:lang="en-US">Common Stock, Capital Shares Reserved for Future Issuance</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract9_lbl0" xml:lang="en-US">Unlabeled Abstract9</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract9" xlink:to="esp_UnlabeledAbstract9_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract6_lbl0" xml:lang="en-US">Unlabeled Abstract6</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract6" xlink:to="esp_UnlabeledAbstract6_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_lbl1" 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_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract5_lbl0" xml:lang="en-US">Unlabeled Abstract5</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract5" xlink:to="esp_UnlabeledAbstract5_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract8_lbl0" xml:lang="en-US">Unlabeled Abstract8</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract8" xlink:to="esp_UnlabeledAbstract8_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_UnlabeledAbstract7_lbl0" xml:lang="en-US">Unlabeled Abstract7</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_UnlabeledAbstract7" xlink:to="esp_UnlabeledAbstract7_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="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_StockGrantedDuringPeriodValueSharebasedCompensationGross_lbl0" xml:lang="en-US">Shares Granted, Value, Share-Based Payment Arrangement, before Forfeiture</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationGross" xlink:to="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationGross_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GeographicConcentrationRiskMember_lbl0" xml:lang="en-US">Geographic Concentration Risk [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GeographicConcentrationRiskMember" xlink:to="us-gaap_GeographicConcentrationRiskMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock_lbl0" xml:lang="en-US">Cash and Cash Equivalents, Policy [Policy Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:to="us-gaap_CashAndCashEquivalentsPolicyTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_RevenueRecognitionMilestoneMethodRevenuesRecognized_lbl1" xml:lang="en-US">Revenue Recognition Milestone Method Revenues Recognized</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_RevenueRecognitionMilestoneMethodRevenuesRecognized" xlink:to="esp_RevenueRecognitionMilestoneMethodRevenuesRecognized_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_DeferredTaxLiability_lbl1" xml:lang="en-US">Deferred Tax Liability</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DeferredTaxLiability" xlink:to="esp_DeferredTaxLiability_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CurrentFiscalYearEndDate_lbl0" xml:lang="en-US">Current Fiscal Year End Date</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_lbl0" xml:lang="en-US">Schedule of Deferred Tax Assets and Liabilities [Table Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:to="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities_lbl0" xml:lang="en-US">Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Accrued Liabilities</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities_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_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="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl0" xml:lang="en-US">Line of Credit Facility, Maximum Borrowing Capacity</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_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_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="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_StockholdersEquity_lbl2" xml:lang="en-US">Equity, Attributable to Parent</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl2"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxAbstract_lbl0" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_lbl0" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Other Adjustments, Percent</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock_lbl0" xml:lang="en-US">Related Party Transactions Disclosure [Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:to="us-gaap_RelatedPartyTransactionsDisclosureTextBlock_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="esp_CommonStockParValue3313PerShareAbstract_lbl0" xml:lang="en-US">Common Stock Par Value3313 Per Share Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_CommonStockParValue3313PerShareAbstract" xlink:to="esp_CommonStockParValue3313PerShareAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_lbl0" xml:lang="en-US">Share-Based Payment Arrangement, Option, Activity [Table Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_lbl0" xml:lang="en-US">Defined Contribution Plan, Employer Matching Contribution, Percent of Employees&apos; Gross Pay</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:to="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_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_LandMember_lbl0" xml:lang="en-US">Land [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LandMember" xlink:to="us-gaap_LandMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromSaleOfOtherProductiveAssets_lbl0" xml:lang="en-US">Proceeds from Sale of Other Productive Assets</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleOfOtherProductiveAssets" xlink:to="us-gaap_ProceedsFromSaleOfOtherProductiveAssets_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_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl0" xml:lang="en-US">Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_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_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_InventoryNet_lbl0" xml:lang="en-US">Inventory, Net</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryNet_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_NetIncomePerShareAbstract_lbl0" 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="esp_NetIncomePerShareAbstract" xlink:to="esp_NetIncomePerShareAbstract_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"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_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_SalesRevenueNetMember_lbl0" xml:lang="en-US">Revenue Benchmark [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SalesRevenueNetMember" xlink:to="us-gaap_SalesRevenueNetMember_lbl0"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfStockOptionActivityAbstract" xlink:href="esp-20230630.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="dei_DocumentType_lbl0" xml:lang="en-US">Document Type</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_DeferredTaxAssetsAbstract_lbl0" xml:lang="en-US">Deferred Tax Assets Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DeferredTaxAssetsAbstract" xlink:to="esp_DeferredTaxAssetsAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityTaxIdentificationNumber_lbl0" xml:lang="en-US">Entity Tax Identification Number</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressPostalZipCode_lbl0" xml:lang="en-US">Entity Address, Postal Zip Code</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl0" xml:lang="en-US">New Accounting Pronouncements, Policy [Policy Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentFiscalPeriodFocus_lbl0" xml:lang="en-US">Document Fiscal Period Focus</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl0" xml:lang="en-US">Property, Plant and Equipment Disclosure [Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_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="dei_EntityInteractiveDataCurrent_lbl0" xml:lang="en-US">Entity Interactive Data Current</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_RecentlyIssuedAccountingStandardsPolicyTextBlock_lbl1" xml:lang="en-US">Recently Issued Accounting Standards Policy Text Block</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_RecentlyIssuedAccountingStandardsPolicyTextBlock" xlink:to="esp_RecentlyIssuedAccountingStandardsPolicyTextBlock_lbl1"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfReconciliationOfTheNumeratorsAndDenominatorsOfTheBasicAndDilutedEarningsPerShareComputationsAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfReconciliationOfTheNumeratorsAndDenominatorsOfTheBasicAndDilutedEarningsPerShareComputationsAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ScheduleOfReconciliationOfTheNumeratorsAndDenominatorsOfTheBasicAndDilutedEarningsPerShareComputationsAbstract_lbl" xml:lang="en-US">Schedule Of Reconciliation Of The Numerators And Denominators Of The Basic And Diluted Earnings Per Share Computations Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfReconciliationOfTheNumeratorsAndDenominatorsOfTheBasicAndDilutedEarningsPerShareComputationsAbstract" xlink:to="esp_ScheduleOfReconciliationOfTheNumeratorsAndDenominatorsOfTheBasicAndDilutedEarningsPerShareComputationsAbstract_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_lbl0" xml:lang="en-US">Deferred Tax Liabilities, Prepaid Expenses</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:to="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_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_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_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_lbl0" xml:lang="en-US">Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:to="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod_lbl1" xml:lang="en-US">Share Based Compensation Arrangement By Share Based Payment Award Options Forfeiture And Expirations In Period</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod" xlink:to="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod_lbl1"/>
    <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_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts_lbl0" xml:lang="en-US">Deferred Tax Liabilities, Inventory</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts" xlink:to="us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts_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_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_NumeratorAbstract_lbl0" xml:lang="en-US">Numerator Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_NumeratorAbstract" xlink:to="esp_NumeratorAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_TradingSymbol_lbl0" xml:lang="en-US">Trading Symbol</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_TradingSymbol" xlink:to="dei_TradingSymbol_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_PropertyPlantAndEquipmentTextBlock_lbl0" xml:lang="en-US">Property, Plant and Equipment [Table Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_lbl0" xml:lang="en-US">Debt Instrument, Basis Spread on Variable Rate</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:to="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2_lbl0" xml:lang="en-US">Share-Based Payment Arrangement, Option, Exercise Price Range, 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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2" xlink:to="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl1" xml:lang="en-US">Cash, Cash 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_BuildingImprovementsMember_lbl1" xml:lang="en-US">Building Improvements [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BuildingImprovementsMember" xlink:to="us-gaap_BuildingImprovementsMember_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_lbl0" xml:lang="en-US">Quarterly Financial Information [Table Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:to="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_NetIncomePerShareAbstract0_lbl0" xml:lang="en-US">Net Income Per Share Abstract0</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_NetIncomePerShareAbstract0" xlink:to="esp_NetIncomePerShareAbstract0_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GainLossOnDispositionOfAssets_lbl0" xml:lang="en-US">Gain (Loss) on Disposition of Property Plant Equipment, Excluding Oil and Gas Property and Timber Property</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnDispositionOfAssets" xlink:to="us-gaap_GainLossOnDispositionOfAssets_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredIncomeTaxLiabilities_lbl0" xml:lang="en-US">Deferred Tax Liabilities, Gross</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxLiabilities" xlink:to="us-gaap_DeferredIncomeTaxLiabilities_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_PensionExpenseTextBlock_lbl1" xml:lang="en-US">Pension Expense Text Block</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_PensionExpenseTextBlock" xlink:to="esp_PensionExpenseTextBlock_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_lbl0" xml:lang="en-US">Share-Based Payment Arrangement, Expense, Tax Benefit</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TradeAccountsReceivableMember_lbl0" xml:lang="en-US">Trade Accounts Receivable [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TradeAccountsReceivableMember" xlink:to="us-gaap_TradeAccountsReceivableMember_lbl0"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfContractualMaturitiesAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfContractualMaturitiesAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ScheduleOfContractualMaturitiesAbstract_lbl" xml:lang="en-US">Schedule Of Contractual Maturities Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfContractualMaturitiesAbstract" xlink:to="esp_ScheduleOfContractualMaturitiesAbstract_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife_lbl0" xml:lang="en-US">Property, Plant and Equipment, Useful Life</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:to="us-gaap_PropertyPlantAndEquipmentUsefulLife_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentPeriodEndDate_lbl0" xml:lang="en-US">Document Period End Date</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_TwoThousandSeventeenPlanMember_lbl1" xml:lang="en-US">Two Thousand Seventeen Plan Member</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_TwoThousandSeventeenPlanMember" xlink:to="esp_TwoThousandSeventeenPlanMember_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_DeferredIncomeTaxesExpenseBenefit_lbl1" xml:lang="en-US">Deferred Income Taxes Expense Benefit</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DeferredIncomeTaxesExpenseBenefit" xlink:to="esp_DeferredIncomeTaxesExpenseBenefit_lbl1"/>
    <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_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="dei_DocumentFinStmtErrorCorrectionFlag_lbl0" xml:lang="en-US">Document Financial Statement Error Correction [Flag]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFinStmtErrorCorrectionFlag" xlink:to="dei_DocumentFinStmtErrorCorrectionFlag_lbl0"/>
    <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_EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends_lbl0" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Deduction, Employee Stock Ownership Plan Dividend, Percent</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit_lbl0" xml:lang="en-US">Current Federal Tax Expense (Benefit)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentFederalTaxExpenseBenefit" xlink:to="us-gaap_CurrentFederalTaxExpenseBenefit_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"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockholdersEquityNoteAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityNoteAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquityNoteAbstract_lbl" xml:lang="en-US">Stockholders&apos; Equity Note [Abstract]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="us-gaap_StockholdersEquityNoteAbstract_lbl"/>
    <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="dei_DocumentAnnualReport_lbl0" xml:lang="en-US">Document Annual Report</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentAnnualReport" xlink:to="dei_DocumentAnnualReport_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable_lbl0" xml:lang="en-US">Increase (Decrease) in Income Taxes Payable</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:to="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock_lbl0" xml:lang="en-US">Comprehensive Income, Policy [Policy Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" xlink:to="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressCityOrTown_lbl0" xml:lang="en-US">Entity Address, City or Town</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_EmployeeStockOwnershipPlanTextBlock_lbl1" xml:lang="en-US">Employee Stock Ownership Plan Text Block</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_EmployeeStockOwnershipPlanTextBlock" xlink:to="esp_EmployeeStockOwnershipPlanTextBlock_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm_lbl1" xml:lang="en-US">Share Based Compensation Arrangement By Share Based Payment Award Options Grants In Period Contractual Term</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm" xlink:to="esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm_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_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="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="dei_EntityVoluntaryFilers_lbl0" xml:lang="en-US">Entity Voluntary Filers</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityVoluntaryFilers" xlink:to="dei_EntityVoluntaryFilers_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityFilerCategory_lbl0" xml:lang="en-US">Entity Filer Category</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFilerCategory" xlink:to="dei_EntityFilerCategory_lbl0"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfPropertyPlantAndEquipmentAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfPropertyPlantAndEquipmentAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ScheduleOfPropertyPlantAndEquipmentAbstract_lbl" xml:lang="en-US">Schedule Of Property Plant And Equipment Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfPropertyPlantAndEquipmentAbstract" xlink:to="esp_ScheduleOfPropertyPlantAndEquipmentAbstract_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecurities_lbl1" xml:lang="en-US">Debt Securities, Available-for-Sale</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecurities_lbl1"/>
    <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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ContractLiabilitiesPolicyTextBlock_lbl1" xml:lang="en-US">Contract Liabilities Policy Text Block</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ContractLiabilitiesPolicyTextBlock" xlink:to="esp_ContractLiabilitiesPolicyTextBlock_lbl1"/>
    <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_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_TreasuryStockValue_lbl0" xml:lang="en-US">Treasury Stock, Value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockValue" xlink:to="us-gaap_TreasuryStockValue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_LondonInterbankOfferedRatesLIBORMember_lbl0" xml:lang="en-US">London Interbank Offered Rates LIBORMember</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_LondonInterbankOfferedRatesLIBORMember" xlink:to="esp_LondonInterbankOfferedRatesLIBORMember_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="dei_EntityAddressStateOrProvince_lbl0" xml:lang="en-US">Entity Address, State or Province</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsReceivableMember_lbl0" xml:lang="en-US">Accounts Receivable [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableMember" xlink:to="us-gaap_AccountsReceivableMember_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_IncomeTaxExpenseBenefit_lbl1" 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_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_UseOfEstimates_lbl0" xml:lang="en-US">Use of Estimates, Policy [Policy Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UseOfEstimates" xlink:to="us-gaap_UseOfEstimates_lbl0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeStatementAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="esp_SignificantCustomersTextBlock_lbl1" xml:lang="en-US">Significant Customers Text Block</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_SignificantCustomersTextBlock" xlink:to="esp_SignificantCustomersTextBlock_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl0" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Percent</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_lbl0" xml:lang="en-US">Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Percent</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_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="esp_EffectiveIncomeTaxRateReconciliationESOPFairValue_lbl1" xml:lang="en-US">Effective Income Tax Rate Reconciliation ESOPFair Value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_EffectiveIncomeTaxRateReconciliationESOPFairValue" xlink:to="esp_EffectiveIncomeTaxRateReconciliationESOPFairValue_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentTransitionReport_lbl0" xml:lang="en-US">Document Transition Report</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_CashFlowsFromFinancingActivitiesAbstract_lbl0" xml:lang="en-US">Cash Flows From Financing Activities Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_CashFlowsFromFinancingActivitiesAbstract" xlink:to="esp_CashFlowsFromFinancingActivitiesAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MachineryAndEquipmentMember_lbl0" xml:lang="en-US">Machinery and Equipment [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MachineryAndEquipmentMember" xlink:to="us-gaap_MachineryAndEquipmentMember_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_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_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="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost_lbl0" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Nondeductible Expense, Share-Based Payment Arrangement, Percent</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost_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_EmployeeStockOwnershipPlanESOPPlanDescription_lbl0" xml:lang="en-US">Employee Stock Ownership Plan (ESOP), Plan Description</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPPlanDescription" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPPlanDescription_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityShellCompany_lbl0" xml:lang="en-US">Entity Shell Company</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityShellCompany" xlink:to="dei_EntityShellCompany_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Exercisable, Weighted Average Exercise Price</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice_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_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_DebtInstrumentInterestRateStatedPercentage_lbl0" xml:lang="en-US">Debt Instrument, Interest Rate, Stated Percentage</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_lbl0" xml:lang="en-US">Debt Securities, Available-for-Sale, Amortized Cost</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:to="us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConcentrationRiskDisclosureTextBlock_lbl0" xml:lang="en-US">Concentration Risk Disclosure [Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:to="us-gaap_ConcentrationRiskDisclosureTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_lbl0" xml:lang="en-US">Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:to="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_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="esp_DeferredTaxLiabilityAbstract_lbl0" xml:lang="en-US">Deferred Tax Liability Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DeferredTaxLiabilityAbstract" xlink:to="esp_DeferredTaxLiabilityAbstract_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_InventoryPolicyTextBlock_lbl0" xml:lang="en-US">Inventory, Policy [Policy Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryPolicyTextBlock" xlink:to="us-gaap_InventoryPolicyTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl0" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock_lbl0" xml:lang="en-US">Additional Paid in Capital, Common Stock</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapitalCommonStock" xlink:to="us-gaap_AdditionalPaidInCapitalCommonStock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl0" xml:lang="en-US">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_lbl1" 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_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockDividendsPerShareCashPaid_lbl1" 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_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_DeferredTaxAssetLiability_lbl1" xml:lang="en-US">Deferred Tax Asset Liability</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DeferredTaxAssetLiability" xlink:to="esp_DeferredTaxAssetLiability_lbl1"/>
    <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_AccruedExpensesAbstract_lbl0" xml:lang="en-US">Accrued Expenses Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_AccruedExpensesAbstract" xlink:to="esp_AccruedExpensesAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_lbl0" xml:lang="en-US">Increase (Decrease) in Prepaid Expense and Other Assets</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AuditorLocation_lbl0" xml:lang="en-US">Auditor Location</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorLocation" xlink:to="dei_AuditorLocation_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl2" 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_lbl2"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfTheEstimatedUsefulLivesOfDepreciableAssetsAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfTheEstimatedUsefulLivesOfDepreciableAssetsAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ScheduleOfTheEstimatedUsefulLivesOfDepreciableAssetsAbstract_lbl" xml:lang="en-US">Schedule Of The Estimated Useful Lives Of Depreciable Assets Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfTheEstimatedUsefulLivesOfDepreciableAssetsAbstract" xlink:to="esp_ScheduleOfTheEstimatedUsefulLivesOfDepreciableAssetsAbstract_lbl"/>
    <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_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_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_LongTermContractsOrProgramsDisclosureTextBlock_lbl0" xml:lang="en-US">Long-Term Contracts or Programs Disclosure [Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermContractsOrProgramsDisclosureTextBlock" xlink:to="us-gaap_LongTermContractsOrProgramsDisclosureTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_GeographicConcentrationRisk1Member_lbl1" xml:lang="en-US">Geographic Concentration Risk1 Member</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_GeographicConcentrationRisk1Member" xlink:to="esp_GeographicConcentrationRisk1Member_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan_lbl0" xml:lang="en-US">Stock Issued During Period, Value, Employee Stock Ownership Plan</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan" xlink:to="us-gaap_StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityRegistrantName_lbl0" xml:lang="en-US">Entity Registrant Name</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StandbyLettersOfCreditMember_lbl0" xml:lang="en-US">Standby Letters of Credit [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandbyLettersOfCreditMember" xlink:to="us-gaap_StandbyLettersOfCreditMember_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="dei_CityAreaCode_lbl0" xml:lang="en-US">City Area Code</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CityAreaCode" xlink:to="dei_CityAreaCode_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PensionAndOtherPostretirementBenefitExpense_lbl0" xml:lang="en-US">Pension and Other Postretirement Benefits Cost (Reversal of Cost)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PensionAndOtherPostretirementBenefitExpense" xlink:to="us-gaap_PensionAndOtherPostretirementBenefitExpense_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_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_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="dei_AmendmentFlag_lbl0" xml:lang="en-US">Amendment Flag</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts_lbl1" xml:lang="en-US">Deferred Tax Benefit Related To Unrecognized Compensation Costs</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts" xlink:to="esp_DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts_lbl1"/>
    <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="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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl0" xml:lang="en-US">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_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="dei_EntityCentralIndexKey_lbl0" xml:lang="en-US">Entity Central Index Key</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey_lbl0"/>
    <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="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_IncreaseDecreaseInContractWithCustomerLiability_lbl0" xml:lang="en-US">Increase (Decrease) in Contract with Customer, Liability</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerLiability_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit_lbl0" xml:lang="en-US">Current State and Local Tax Expense (Benefit)</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:to="us-gaap_CurrentStateAndLocalTaxExpenseBenefit_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_DefinedContributionPlanEmployersMatchingContribution_lbl1" xml:lang="en-US">Defined Contribution Plan Employers Matching Contribution</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_DefinedContributionPlanEmployersMatchingContribution" xlink:to="esp_DefinedContributionPlanEmployersMatchingContribution_lbl1"/>
    <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_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_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"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfQuarterlyFinancialInformationAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfQuarterlyFinancialInformationAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ScheduleOfQuarterlyFinancialInformationAbstract_lbl" xml:lang="en-US">Schedule Of Quarterly Financial Information Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfQuarterlyFinancialInformationAbstract" xlink:to="esp_ScheduleOfQuarterlyFinancialInformationAbstract_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_FourthQuarterMember_lbl0" xml:lang="en-US">Fourth Quarter Member</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_FourthQuarterMember" xlink:to="esp_FourthQuarterMember_lbl0"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfChangesInNonVestedStockOptionsAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfChangesInNonVestedStockOptionsAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ScheduleOfChangesInNonVestedStockOptionsAbstract_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="esp_ScheduleOfChangesInNonVestedStockOptionsAbstract" xlink:to="esp_ScheduleOfChangesInNonVestedStockOptionsAbstract_lbl"/>
    <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="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_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_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"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfCashFlowsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_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_IncomeTaxDisclosureTextBlock_lbl0" xml:lang="en-US">Income Tax Disclosure [Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock_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="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_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_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_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_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_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl0" 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_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_QuarterlyFinancialInformationAxis_lbl0" xml:lang="en-US">Quarterly Financial Information Axis</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_QuarterlyFinancialInformationAxis" xlink:to="esp_QuarterlyFinancialInformationAxis_lbl0"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfContractsInProcessAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfContractsInProcessAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ScheduleOfContractsInProcessAbstract_lbl" xml:lang="en-US">Schedule Of Contracts In Process Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfContractsInProcessAbstract" xlink:to="esp_ScheduleOfContractsInProcessAbstract_lbl"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_InventoriesAbstract_lbl0" xml:lang="en-US">Inventories Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_InventoriesAbstract" xlink:to="esp_InventoriesAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_lbl0" 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_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryWorkInProcess_lbl0" xml:lang="en-US">Inventory, Work in Process, Gross</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryWorkInProcess" xlink:to="us-gaap_InventoryWorkInProcess_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="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="esp_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear_lbl1" xml:lang="en-US">Number Of Shares Subject To Option Or Award Single Fiscal Year</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear" xlink:to="esp_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareAbstract_lbl0" xml:lang="en-US">Earnings 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_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_RevenueRecognitionPolicyTextBlock_lbl0" xml:lang="en-US">Revenue [Policy Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRecognitionPolicyTextBlock" xlink:to="us-gaap_RevenueRecognitionPolicyTextBlock_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_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_EarningsPerSharePolicyTextBlock_lbl0" xml:lang="en-US">Earnings Per Share, Policy [Policy Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerSharePolicyTextBlock" xlink:to="us-gaap_EarningsPerSharePolicyTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_IcfrAuditorAttestationFlag_lbl0" xml:lang="en-US">ICFR Auditor Attestation Flag</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_IcfrAuditorAttestationFlag" xlink:to="dei_IcfrAuditorAttestationFlag_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_LossContingencyAccrualAtCarryingValue_lbl0" xml:lang="en-US">Loss Contingency Accrual</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LossContingencyAccrualAtCarryingValue" xlink:to="us-gaap_LossContingencyAccrualAtCarryingValue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_IncreaseReductionInRateResultingFromAbstract_lbl0" xml:lang="en-US">Increase Reduction In Rate Resulting From Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_IncreaseReductionInRateResultingFromAbstract" xlink:to="esp_IncreaseReductionInRateResultingFromAbstract_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_lbl0" xml:lang="en-US">Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:to="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquipmentExpense_lbl0" xml:lang="en-US">Equipment Expense</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquipmentExpense" xlink:to="us-gaap_EquipmentExpense_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GrossProfit_lbl1" 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_lbl1"/>
    <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"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfReservedCommonSharesForFutureIssuanceAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfReservedCommonSharesForFutureIssuanceAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ScheduleOfReservedCommonSharesForFutureIssuanceAbstract_lbl" xml:lang="en-US">Schedule Of Reserved Common Shares For Future Issuance Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfReservedCommonSharesForFutureIssuanceAbstract" xlink:to="esp_ScheduleOfReservedCommonSharesForFutureIssuanceAbstract_lbl"/>
    <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_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_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_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="esp_ConcentrationRiskNumberOfCustomers_lbl1" xml:lang="en-US">Concentration Risk Number Of Customers</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ConcentrationRiskNumberOfCustomers" xlink:to="esp_ConcentrationRiskNumberOfCustomers_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BuildingAndBuildingImprovementsMember_lbl0" xml:lang="en-US">Building and Building Improvements [Member]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BuildingAndBuildingImprovementsMember" xlink:to="us-gaap_BuildingAndBuildingImprovementsMember_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_USFederalStatutoryIncomeTaxRate_lbl1" xml:lang="en-US">USFederal Statutory Income Tax Rate</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_USFederalStatutoryIncomeTaxRate" xlink:to="esp_USFederalStatutoryIncomeTaxRate_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock_lbl0" xml:lang="en-US">Investments in Debt and Marketable Equity Securities (and Certain Trading Assets) Disclosure [Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" xlink:to="us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock_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="esp_EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback_lbl1" xml:lang="en-US">Effective Income Tax Rate Reconciliation Rate Differential On Net Operating Loss Carryback</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback" xlink:to="esp_EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback_lbl1"/>
    <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="dei_DocumentFiscalYearFocus_lbl0" xml:lang="en-US">Document Fiscal Year Focus</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DividendsCommonStockCash_lbl0" xml:lang="en-US">Dividends, Common Stock, Cash</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendsCommonStockCash" xlink:to="us-gaap_DividendsCommonStockCash_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCurrentReportingStatus_lbl0" xml:lang="en-US">Entity Current Reporting Status</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus_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_FairValueOfFinancialInstrumentsPolicy_lbl0" xml:lang="en-US">Fair Value of Financial Instruments, Policy [Policy Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:to="us-gaap_FairValueOfFinancialInstrumentsPolicy_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_DeferredTaxLiabilitiesPropertyPlantAndEquipment_lbl0" xml:lang="en-US">Deferred Tax Liabilities, Property, Plant and Equipment</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:to="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityEmergingGrowthCompany_lbl0" xml:lang="en-US">Entity Emerging Growth Company</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany_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_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_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="us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan_lbl0" xml:lang="en-US">Stock Issued During Period, Shares, Employee Benefit Plan</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan" xlink:to="us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CostOfRevenue_lbl0" xml:lang="en-US">Cost of Revenue</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfRevenue" xlink:to="us-gaap_CostOfRevenue_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NatureOfOperations_lbl0" xml:lang="en-US">Nature of Operations [Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NatureOfOperations" xlink:to="us-gaap_NatureOfOperations_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AuditorFirmId_lbl0" xml:lang="en-US">Auditor Firm ID</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorFirmId" xlink:to="dei_AuditorFirmId_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="us-gaap_InvestmentIncomeInterestAndDividend_lbl0" xml:lang="en-US">Investment Income, Interest and Dividend</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentIncomeInterestAndDividend" xlink:to="us-gaap_InvestmentIncomeInterestAndDividend_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DividendsCash_lbl0" xml:lang="en-US">Dividends, Cash</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendsCash" xlink:to="us-gaap_DividendsCash_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetIncomeLoss_lbl2" xml:lang="en-US">Net Income (Loss) Attributable to Parent</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_lbl2"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_FirstQuarterMember_lbl0" xml:lang="en-US">First Quarter Member</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_FirstQuarterMember" xlink:to="esp_FirstQuarterMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxesPaid_lbl0" 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_IncomeTaxesPaid" xlink:to="us-gaap_IncomeTaxesPaid_lbl0"/>
    <loc xlink:type="locator" xlink:label="esp_ScheduleOfAvailableForSaleSecuritiesAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfAvailableForSaleSecuritiesAbstract"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="esp_ScheduleOfAvailableForSaleSecuritiesAbstract_lbl" xml:lang="en-US">Schedule Of Available For Sale Securities Abstract</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfAvailableForSaleSecuritiesAbstract" xlink:to="esp_ScheduleOfAvailableForSaleSecuritiesAbstract_lbl"/>
    <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_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl1" 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_lbl1"/>
    <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_ThirdQuarterMember_lbl0" xml:lang="en-US">Third Quarter Member</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ThirdQuarterMember" xlink:to="esp_ThirdQuarterMember_lbl0"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityPublicFloat_lbl0" xml:lang="en-US">Entity Public Float</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityPublicFloat" xlink:to="dei_EntityPublicFloat_lbl0"/>
    <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="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="esp_ScheduleOfContractsInProcessTableTextBlock_lbl1" xml:lang="en-US">Schedule Of Contracts In Process Table Text Block</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="esp_ScheduleOfContractsInProcessTableTextBlock" xlink:to="esp_ScheduleOfContractsInProcessTableTextBlock_lbl1"/>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_QuarterlyFinancialInformationTextBlock_lbl0" xml:lang="en-US">Quarterly Financial Information [Text Block]</label>
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_QuarterlyFinancialInformationTextBlock" xlink:to="us-gaap_QuarterlyFinancialInformationTextBlock_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"/>
  </labelLink>
</linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>12
<FILENAME>esp-20230630_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: Thu Sep 21 14:52:04 UTC 2023 -->
<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-20230630.xsd#esp_r_ConsolidatedBalanceSheet" roleURI="http://espey.com/role/ConsolidatedBalanceSheet"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ConsolidatedBalanceSheet_Parentheticals" roleURI="http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ConsolidatedIncomeStatement" roleURI="http://espey.com/role/ConsolidatedIncomeStatement"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ShareholdersEquityType2or3" roleURI="http://espey.com/role/ShareholdersEquityType2or3"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ShareholdersEquityType2or3_Parentheticals" roleURI="http://espey.com/role/ShareholdersEquityType2or3_Parentheticals"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ConsolidatedCashFlow" roleURI="http://espey.com/role/ConsolidatedCashFlow"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_NatureofOperations" roleURI="http://espey.com/role/NatureofOperations"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_SummaryofSignificantAccountingPolicies" roleURI="http://espey.com/role/SummaryofSignificantAccountingPolicies"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_Revenue" roleURI="http://espey.com/role/Revenue"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_InvestmentSecurities" roleURI="http://espey.com/role/InvestmentSecurities"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ContractsinProcess" roleURI="http://espey.com/role/ContractsinProcess"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_PropertyPlantandEquipment" roleURI="http://espey.com/role/PropertyPlantandEquipment"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_PensionExpense" roleURI="http://espey.com/role/PensionExpense"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ProvisionforIncomeTaxes" roleURI="http://espey.com/role/ProvisionforIncomeTaxes"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_SignificantCustomers" roleURI="http://espey.com/role/SignificantCustomers"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_EmployeeStockOwnershipPlan" roleURI="http://espey.com/role/EmployeeStockOwnershipPlan"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_StockBasedCompensation" roleURI="http://espey.com/role/StockBasedCompensation"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ConcentrationofCreditRisk" roleURI="http://espey.com/role/ConcentrationofCreditRisk"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_RelatedParties" roleURI="http://espey.com/role/RelatedParties"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_CommitmentsandContingencies" roleURI="http://espey.com/role/CommitmentsandContingencies"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_StockholdersEquity" roleURI="http://espey.com/role/StockholdersEquity"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_LineofCredit" roleURI="http://espey.com/role/LineofCredit"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_QuarterlyFinancialInformationUnaudited" roleURI="http://espey.com/role/QuarterlyFinancialInformationUnaudited"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_AccountingPoliciesByPolicy" roleURI="http://espey.com/role/AccountingPoliciesByPolicy"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_SummaryofSignificantAccountingPoliciesTables" roleURI="http://espey.com/role/SummaryofSignificantAccountingPoliciesTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_InvestmentSecuritiesTables" roleURI="http://espey.com/role/InvestmentSecuritiesTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ContractsinProcessTables" roleURI="http://espey.com/role/ContractsinProcessTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_PropertyPlantandEquipmentTables" roleURI="http://espey.com/role/PropertyPlantandEquipmentTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ProvisionforIncomeTaxesTables" roleURI="http://espey.com/role/ProvisionforIncomeTaxesTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_EmployeeStockOwnershipPlanTables" roleURI="http://espey.com/role/EmployeeStockOwnershipPlanTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_StockBasedCompensationTables" roleURI="http://espey.com/role/StockBasedCompensationTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_StockholdersEquityTables" roleURI="http://espey.com/role/StockholdersEquityTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_QuarterlyFinancialInformationUnauditedTables" roleURI="http://espey.com/role/QuarterlyFinancialInformationUnauditedTables"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable" roleURI="http://espey.com/role/ScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofAvailableforSaleSecuritiesTable" roleURI="http://espey.com/role/ScheduleofAvailableforSaleSecuritiesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofContractualMaturitiesTable" roleURI="http://espey.com/role/ScheduleofContractualMaturitiesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofContractsinProcessTable" roleURI="http://espey.com/role/ScheduleofContractsinProcessTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofPropertyPlantandEquipmentTable" roleURI="http://espey.com/role/ScheduleofPropertyPlantandEquipmentTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofComponentsoftheProvisionforIncomeTaxesTable" roleURI="http://espey.com/role/ScheduleofComponentsoftheProvisionforIncomeTaxesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofEffectiveIncomeTaxRatesTable" roleURI="http://espey.com/role/ScheduleofEffectiveIncomeTaxRatesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofDeferredTaxAssetsandLiabilitiesTable" roleURI="http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofESOPSharesTable" roleURI="http://espey.com/role/ScheduleofESOPSharesTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofWeightedAverageAssumptionsforOptionAwardsTable" roleURI="http://espey.com/role/ScheduleofWeightedAverageAssumptionsforOptionAwardsTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofStockOptionActivityTable" roleURI="http://espey.com/role/ScheduleofStockOptionActivityTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofChangesinNonVestedStockOptionsTable" roleURI="http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofReservedCommonSharesforFutureIssuanceTable" roleURI="http://espey.com/role/ScheduleofReservedCommonSharesforFutureIssuanceTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable" roleURI="http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ScheduleofQuarterlyFinancialInformationTable" roleURI="http://espey.com/role/ScheduleofQuarterlyFinancialInformationTable"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_SummaryofSignificantAccountingPoliciesDetails" roleURI="http://espey.com/role/SummaryofSignificantAccountingPoliciesDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_RevenueDetails" roleURI="http://espey.com/role/RevenueDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_PropertyPlantandEquipmentDetails" roleURI="http://espey.com/role/PropertyPlantandEquipmentDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_PensionExpenseDetails" roleURI="http://espey.com/role/PensionExpenseDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_SignificantCustomersDetails" roleURI="http://espey.com/role/SignificantCustomersDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_EmployeeStockOwnershipPlanDetails" roleURI="http://espey.com/role/EmployeeStockOwnershipPlanDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_StockBasedCompensationDetails" roleURI="http://espey.com/role/StockBasedCompensationDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_ConcentrationofCreditRiskDetails" roleURI="http://espey.com/role/ConcentrationofCreditRiskDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_CommitmentsandContingenciesDetails" roleURI="http://espey.com/role/CommitmentsandContingenciesDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_StockholdersEquityDetails" roleURI="http://espey.com/role/StockholdersEquityDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#esp_r_LineofCreditDetails" roleURI="http://espey.com/role/LineofCreditDetails"/>
  <roleRef xlink:type="simple" xlink:href="esp-20230630.xsd#DocumentAndEntityInformation" roleURI="http://espey.com/role/DocumentAndEntityInformation"/>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ConsolidatedBalanceSheet">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AssetsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_AvailableForSaleSecuritiesDebtSecurities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecurities" 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/2023/elts/us-gaap-2023.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_IncomeTaxesReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxesReceivable"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_IncomeTaxesReceivable" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="InventoriesAbstract" xlink:href="esp-20230630.xsd#esp_InventoriesAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="InventoriesAbstract" order="4.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/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterials"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InventoriesAbstract" 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/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryWorkInProcess"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InventoriesAbstract" 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/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryForLongTermContractsOrPrograms"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InventoriesAbstract" 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/2023/elts/us-gaap-2023.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="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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="AccruedExpensesAbstract" xlink:href="esp-20230630.xsd#esp_AccruedExpensesAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="AccruedExpensesAbstract" 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/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedSalariesCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccruedExpensesAbstract" 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/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedVacationCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccruedExpensesAbstract" xlink:to="us-gaap_AccruedVacationCurrent" order="1.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/2023/elts/us-gaap-2023.xsd#us-gaap_OtherEmployeeRelatedLiabilitiesCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccruedExpensesAbstract" xlink:to="us-gaap_OtherEmployeeRelatedLiabilitiesCurrent" order="2.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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="DeferredTaxLiability" xlink:href="esp-20230630.xsd#esp_DeferredTaxLiability"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="DeferredTaxLiability" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Liabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxLiability" xlink:to="us-gaap_Liabilities" order="0.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/2023/elts/us-gaap-2023.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="6.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/2023/elts/us-gaap-2023.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="7.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/2023/elts/us-gaap-2023.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="8.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/2023/elts/us-gaap-2023.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="9.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/2023/elts/us-gaap-2023.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="10.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="TotalStockholdersEquityBeforyEsopAndTreasuryStock" xlink:href="esp-20230630.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="11.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="UnearnedEsopSharesCost" xlink:href="esp-20230630.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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:type="extended" xlink:role="http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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:type="extended" xlink:role="http://espey.com/role/ConsolidatedIncomeStatement">
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeStatementAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Revenues" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CostOfRevenue" xlink:to="us-gaap_GrossProfit" order="0.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_OtherIncomeAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherIncomeAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_OtherIncomeAbstract" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentIncomeInterestAndDividend" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentIncomeInterestAndDividend"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherIncomeAbstract" xlink:to="us-gaap_InvestmentIncomeInterestAndDividend" 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/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncome"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherIncomeAbstract" 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/2023/elts/us-gaap-2023.xsd#us-gaap_NonoperatingIncomeExpense"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherNonoperatingIncome" xlink:to="us-gaap_NonoperatingIncomeExpense" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeLossAttributableToParent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossAttributableToParent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeLossAttributableToParent" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ShareholdersEquityType2or3">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StatementLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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-20230630.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_ComprehensiveIncomeNetOfTaxAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" order="2.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/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="us-gaap_NetIncomeLoss" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax" order="1.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/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationGross" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationGross"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationGross" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DividendsCommonStockCash" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DividendsCommonStockCash"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="us-gaap_DividendsCommonStockCash" order="4.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="us-gaap_StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockholdersEquity_0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="us-gaap_StockholdersEquity_0" order="6.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/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="us-gaap_CommonStockSharesOutstanding_0" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ShareholdersEquityType2or3_Parentheticals">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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:type="extended" xlink:role="http://espey.com/role/ConsolidatedCashFlow">
    <loc xlink:type="locator" xlink:label="us-gaap_StatementOfCashFlowsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_GainLossOnDispositionOfAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnDispositionOfAssets"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_GainLossOnDispositionOfAssets" 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/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" order="2.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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-20230630.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="us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="IncreasedecreaseInPayrollAndOtherTaxesWithheld" xlink:href="esp-20230630.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="8.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/2023/elts/us-gaap-2023.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="9.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/2023/elts/us-gaap-2023.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="10.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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="3.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/2023/elts/us-gaap-2023.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="us-gaap_ProceedsFromSaleOfOtherProductiveAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleOfOtherProductiveAssets"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromSaleOfOtherProductiveAssets" order="1.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/2023/elts/us-gaap-2023.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="2.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/2023/elts/us-gaap-2023.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="3.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/2023/elts/us-gaap-2023.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="CashFlowsFromFinancingActivitiesAbstract" xlink:href="esp-20230630.xsd#esp_CashFlowsFromFinancingActivitiesAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="CashFlowsFromFinancingActivitiesAbstract" order="4.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/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsOfDividendsCommonStock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CashFlowsFromFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsOfDividendsCommonStock" order="0.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PaymentsOfDividendsCommonStock" 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/2023/elts/us-gaap-2023.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="5.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/2023/elts/us-gaap-2023.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="6.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/2023/elts/us-gaap-2023.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="7.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SupplementalCashFlowInformationAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxesPaid" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxesPaid"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_IncomeTaxesPaid" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/NatureofOperations">
    <loc xlink:type="locator" xlink:label="NatureOfOperationsAbstract" xlink:href="esp-20230630.xsd#esp_NatureOfOperationsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NatureOfOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NatureOfOperations"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NatureOfOperationsAbstract" xlink:to="us-gaap_NatureOfOperations" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/SummaryofSignificantAccountingPolicies">
    <loc xlink:type="locator" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SignificantAccountingPoliciesTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/Revenue">
    <loc xlink:type="locator" xlink:label="us-gaap_RevenuesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenuesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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:type="extended" xlink:role="http://espey.com/role/InvestmentSecurities">
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:to="us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ContractsinProcess">
    <loc xlink:type="locator" xlink:label="us-gaap_ContractorsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractorsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LongTermContractsOrProgramsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermContractsOrProgramsDisclosureTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContractorsAbstract" xlink:to="us-gaap_LongTermContractsOrProgramsDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/PropertyPlantandEquipment">
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/PensionExpense">
    <loc xlink:type="locator" xlink:label="us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="PensionExpenseTextBlock" xlink:href="esp-20230630.xsd#esp_PensionExpenseTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:to="PensionExpenseTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ProvisionforIncomeTaxes">
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/SignificantCustomers">
    <loc xlink:type="locator" xlink:label="SignificantCustomersAbstract" xlink:href="esp-20230630.xsd#esp_SignificantCustomersAbstract"/>
    <loc xlink:type="locator" xlink:label="SignificantCustomersTextBlock" xlink:href="esp-20230630.xsd#esp_SignificantCustomersTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SignificantCustomersAbstract" xlink:to="SignificantCustomersTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/EmployeeStockOwnershipPlan">
    <loc xlink:type="locator" xlink:label="EmployeeStockOwnershipPlanAbstract" xlink:href="esp-20230630.xsd#esp_EmployeeStockOwnershipPlanAbstract"/>
    <loc xlink:type="locator" xlink:label="EmployeeStockOwnershipPlanTextBlock" xlink:href="esp-20230630.xsd#esp_EmployeeStockOwnershipPlanTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EmployeeStockOwnershipPlanAbstract" xlink:to="EmployeeStockOwnershipPlanTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/StockBasedCompensation">
    <loc xlink:type="locator" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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:type="extended" xlink:role="http://espey.com/role/ConcentrationofCreditRisk">
    <loc xlink:type="locator" xlink:label="us-gaap_RisksAndUncertaintiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RisksAndUncertaintiesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RisksAndUncertaintiesAbstract" xlink:to="us-gaap_ConcentrationRiskDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/RelatedParties">
    <loc xlink:type="locator" xlink:label="us-gaap_RelatedPartyTransactionsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionsAbstract" xlink:to="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/CommitmentsandContingencies">
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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:type="extended" xlink:role="http://espey.com/role/StockholdersEquity">
    <loc xlink:type="locator" xlink:label="us-gaap_StockholdersEquityNoteAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityNoteAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="us-gaap_StockholdersEquityNoteDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/LineofCredit">
    <loc xlink:type="locator" xlink:label="us-gaap_DebtDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_DebtDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/QuarterlyFinancialInformationUnaudited">
    <loc xlink:type="locator" xlink:label="us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_QuarterlyFinancialInformationDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_QuarterlyFinancialInformationTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_QuarterlyFinancialInformationTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:to="us-gaap_QuarterlyFinancialInformationTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/AccountingPoliciesByPolicy">
    <loc xlink:type="locator" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_RevenueRecognitionPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRecognitionPolicyTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_RevenueRecognitionPolicyTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InventoryPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryPolicyTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_InventoryPolicyTextBlock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="ContractLiabilitiesPolicyTextBlock" xlink:href="esp-20230630.xsd#esp_ContractLiabilitiesPolicyTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="ContractLiabilitiesPolicyTextBlock" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxPolicyTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_IncomeTaxPolicyTextBlock" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_CashAndCashEquivalentsPolicyTextBlock" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentPolicyTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_InvestmentPolicyTextBlock" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_FairValueOfFinancialInstrumentsPolicy" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TradeAndOtherAccountsReceivablePolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TradeAndOtherAccountsReceivablePolicy"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_TradeAndOtherAccountsReceivablePolicy" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerSharePolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerSharePolicyTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_EarningsPerSharePolicyTextBlock" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomePolicyPolicyTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" order="10.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_UseOfEstimates" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UseOfEstimates"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_UseOfEstimates" order="11.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="RecentlyIssuedAccountingStandardsPolicyTextBlock" xlink:href="esp-20230630.xsd#esp_RecentlyIssuedAccountingStandardsPolicyTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="RecentlyIssuedAccountingStandardsPolicyTextBlock" order="12.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" order="13.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" order="14.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskCreditRisk" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskCreditRisk"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ConcentrationRiskCreditRisk" order="15.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/SummaryofSignificantAccountingPoliciesTables">
    <loc xlink:type="locator" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <loc xlink:type="locator" xlink:label="ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock" xlink:href="esp-20230630.xsd#esp_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/InvestmentSecuritiesTables">
    <loc xlink:type="locator" xlink:label="us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" 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/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:to="us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ContractsinProcessTables">
    <loc xlink:type="locator" xlink:label="us-gaap_ContractorsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractorsAbstract"/>
    <loc xlink:type="locator" xlink:label="ScheduleOfContractsInProcessTableTextBlock" xlink:href="esp-20230630.xsd#esp_ScheduleOfContractsInProcessTableTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContractorsAbstract" xlink:to="ScheduleOfContractsInProcessTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/PropertyPlantandEquipmentTables">
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ProvisionforIncomeTaxesTables">
    <loc xlink:type="locator" xlink:label="us-gaap_IncomeTaxDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/EmployeeStockOwnershipPlanTables">
    <loc xlink:type="locator" xlink:label="EmployeeStockOwnershipPlanAbstract" xlink:href="esp-20230630.xsd#esp_EmployeeStockOwnershipPlanAbstract"/>
    <loc xlink:type="locator" xlink:label="EmployeeStockOwnershipPlanTablesTable" xlink:href="esp-20230630.xsd#esp_EmployeeStockOwnershipPlanTablesTable"/>
    <loc xlink:type="locator" xlink:label="EmployeeStockOwnershipPlanTablesLineItems" xlink:href="esp-20230630.xsd#esp_EmployeeStockOwnershipPlanTablesLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EmployeeStockOwnershipPlanAbstract" xlink:to="EmployeeStockOwnershipPlanTablesTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EmployeeStockOwnershipPlanTablesTable" xlink:to="EmployeeStockOwnershipPlanTablesLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EmployeeStockOwnershipPlanTablesLineItems" xlink:to="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/StockBasedCompensationTables">
    <loc xlink:type="locator" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <loc xlink:type="locator" xlink:label="StockBasedCompensationTablesTable" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationTablesTable"/>
    <loc xlink:type="locator" xlink:label="StockBasedCompensationTablesLineItems" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationTablesLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="StockBasedCompensationTablesTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationTablesTable" xlink:to="StockBasedCompensationTablesLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationTablesLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationTablesLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationTablesLineItems" xlink:to="us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/StockholdersEquityTables">
    <loc xlink:type="locator" xlink:label="us-gaap_StockholdersEquityNoteAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityNoteAbstract"/>
    <loc xlink:type="locator" xlink:label="ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock" xlink:href="esp-20230630.xsd#esp_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/QuarterlyFinancialInformationUnauditedTables">
    <loc xlink:type="locator" xlink:label="us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_QuarterlyFinancialInformationDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:to="us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable">
    <loc xlink:type="locator" xlink:label="ScheduleOfTheEstimatedUsefulLivesOfDepreciableAssetsAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfTheEstimatedUsefulLivesOfDepreciableAssetsAbstract"/>
    <loc xlink:type="locator" xlink:label="SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable" xlink:href="esp-20230630.xsd#esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable"/>
    <loc xlink:type="locator" xlink:label="SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems" xlink:href="esp-20230630.xsd#esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfTheEstimatedUsefulLivesOfDepreciableAssetsAbstract" xlink:to="SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_BuildingAndBuildingImprovementsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingAndBuildingImprovementsMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_BuildingAndBuildingImprovementsMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_MachineryAndEquipmentMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MachineryAndEquipmentMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_MachineryAndEquipmentMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FurnitureAndFixturesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_FurnitureAndFixturesMember" 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/2023/elts/srt-2023.xsd#srt_RangeAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable" xlink:to="srt_RangeAxis" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="srt_MinimumMember" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MinimumMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="srt_MaximumMember" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable" xlink:to="SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentUsefulLife" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofAvailableforSaleSecuritiesTable">
    <loc xlink:type="locator" xlink:label="ScheduleOfAvailableForSaleSecuritiesAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfAvailableForSaleSecuritiesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtSecuritiesAvailableForSaleTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleTable"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfAvailableForSaleSecuritiesAbstract" 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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_ScheduleOfAvailableForSaleSecuritiesLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" 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/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" order="2.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecurities" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofContractualMaturitiesTable">
    <loc xlink:type="locator" xlink:label="ScheduleOfContractualMaturitiesAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfContractualMaturitiesAbstract"/>
    <loc xlink:type="locator" xlink:label="InvestmentSecuritiesDetailsScheduleofContractualMaturitiesTable" xlink:href="esp-20230630.xsd#esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesTable"/>
    <loc xlink:type="locator" xlink:label="InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems" xlink:href="esp-20230630.xsd#esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfContractualMaturitiesAbstract" xlink:to="InvestmentSecuritiesDetailsScheduleofContractualMaturitiesTable" 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/2023/elts/srt-2023.xsd#srt_StatementScenarioAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InvestmentSecuritiesDetailsScheduleofContractualMaturitiesTable" xlink:to="srt_StatementScenarioAxis" order="1.0"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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="InvestmentSecuritiesDetailsScheduleofContractualMaturitiesTable" xlink:to="InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems" xlink:to="us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofContractsinProcessTable">
    <loc xlink:type="locator" xlink:label="ScheduleOfContractsInProcessAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfContractsInProcessAbstract"/>
    <loc xlink:type="locator" xlink:label="UnrecognizedGrossContractValue" xlink:href="esp-20230630.xsd#esp_UnrecognizedGrossContractValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfContractsInProcessAbstract" xlink:to="UnrecognizedGrossContractValue" order="0.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/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryForLongTermContractsOrPrograms"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfContractsInProcessAbstract" xlink:to="us-gaap_InventoryForLongTermContractsOrPrograms" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofPropertyPlantandEquipmentTable">
    <loc xlink:type="locator" xlink:label="ScheduleOfPropertyPlantAndEquipmentAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfPropertyPlantAndEquipmentAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfPropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" order="0.0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LandMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LandMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_LandMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_BuildingImprovementsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingImprovementsMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_BuildingImprovementsMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_MachineryAndEquipmentMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MachineryAndEquipmentMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_MachineryAndEquipmentMember" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FurnitureAndFixturesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_FurnitureAndFixturesMember" 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="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_PropertyPlantAndEquipmentLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentGross" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" order="1.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofComponentsoftheProvisionforIncomeTaxesTable">
<!-- [WMV5][XcpuxYn59dz7vgYynUDuwG7r97K2jUTysl7vcz0lJt/tSeJz73kx1cLt0ZFF2SK/vxBCY0vdSrYnt/FcukLonGvrL5wMA+ofwaqo4qMNOuQCZ4f5MsVOmOOAhEIki8WPj8IecsZEAIH93EFFuU1YNbJ9bq3A8pyccr+4dZb24XmdvHCn85JsH7H0AtPOV2WmLkVDPf9RD329k5Bn5/FaLlBT8+9s8oe2tmloh3coIpwefdJI6BJX3jveRxOVHXUzNWLk9gC5sWj3tAbMPZ/pROLhTd51IcZzKPV3oR2ltcdmDTxZH645pA==] CSR-->
    <loc xlink:type="locator" xlink:label="ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CurrentFederalTaxExpenseBenefit"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract" xlink:to="us-gaap_CurrentFederalTaxExpenseBenefit" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract" xlink:to="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="DeferredIncomeTaxesExpenseBenefit" xlink:href="esp-20230630.xsd#esp_DeferredIncomeTaxesExpenseBenefit"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract" xlink:to="DeferredIncomeTaxesExpenseBenefit" order="2.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/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofEffectiveIncomeTaxRatesTable">
    <loc xlink:type="locator" xlink:label="ScheduleOfEffectiveIncomeTaxRatesAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfEffectiveIncomeTaxRatesAbstract"/>
    <loc xlink:type="locator" xlink:label="USFederalStatutoryIncomeTaxRate" xlink:href="esp-20230630.xsd#esp_USFederalStatutoryIncomeTaxRate"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfEffectiveIncomeTaxRatesAbstract" xlink:to="USFederalStatutoryIncomeTaxRate" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="IncreaseReductionInRateResultingFromAbstract" xlink:href="esp-20230630.xsd#esp_IncreaseReductionInRateResultingFromAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfEffectiveIncomeTaxRatesAbstract" xlink:to="IncreaseReductionInRateResultingFromAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseReductionInRateResultingFromAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="EffectiveIncomeTaxRateReconciliationESOPFairValue" xlink:href="esp-20230630.xsd#esp_EffectiveIncomeTaxRateReconciliationESOPFairValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseReductionInRateResultingFromAbstract" xlink:to="EffectiveIncomeTaxRateReconciliationESOPFairValue" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseReductionInRateResultingFromAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseReductionInRateResultingFromAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback" xlink:href="esp-20230630.xsd#esp_EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseReductionInRateResultingFromAbstract" xlink:to="EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseReductionInRateResultingFromAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfEffectiveIncomeTaxRatesAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable">
    <loc xlink:type="locator" xlink:label="ScheduleOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfDeferredTaxAssetsAndLiabilitiesAbstract"/>
    <loc xlink:type="locator" xlink:label="DeferredTaxAssetsAbstract" xlink:href="esp-20230630.xsd#esp_DeferredTaxAssetsAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:to="DeferredTaxAssetsAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxAssetsAbstract" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxAssetsAbstract" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxAssetsAbstract" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" 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/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxAssetsAbstract" xlink:to="us-gaap_DeferredTaxAssetsGross" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="DeferredTaxLiabilityAbstract" xlink:href="esp-20230630.xsd#esp_DeferredTaxLiabilityAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:to="DeferredTaxLiabilityAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxLiabilityAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxLiabilityAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredTaxLiabilitiesPrepaidExpenses"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxLiabilityAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DeferredIncomeTaxLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DeferredTaxLiabilityAbstract" xlink:to="us-gaap_DeferredIncomeTaxLiabilities" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <loc xlink:type="locator" xlink:label="DeferredTaxAssetLiability" xlink:href="esp-20230630.xsd#esp_DeferredTaxAssetLiability"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfDeferredTaxAssetsAndLiabilitiesAbstract" xlink:to="DeferredTaxAssetLiability" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofESOPSharesTable">
    <loc xlink:type="locator" xlink:label="ScheduleOfEsopSharesAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfEsopSharesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTable"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfEsopSharesAbstract" xlink:to="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTable" 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/2023/elts/srt-2023.xsd#srt_StatementScenarioAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTable" xlink:to="srt_StatementScenarioAxis" order="1.0"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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="us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTable" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares" order="0.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/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares" order="1.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/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP" order="2.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/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofWeightedAverageAssumptionsforOptionAwardsTable">
    <loc xlink:type="locator" xlink:label="ScheduleOfWeightedAverageAssumptionsForOptionAwardsAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfWeightedAverageAssumptionsForOptionAwardsAbstract"/>
    <loc xlink:type="locator" xlink:label="StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsTable" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsTable"/>
    <loc xlink:type="locator" xlink:label="StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfWeightedAverageAssumptionsForOptionAwardsAbstract" xlink:to="StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsTable" 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/2023/elts/srt-2023.xsd#srt_StatementScenarioAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsTable" xlink:to="srt_StatementScenarioAxis" order="1.0"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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="StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsTable" xlink:to="StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofStockOptionActivityTable">
    <loc xlink:type="locator" xlink:label="ScheduleOfStockOptionActivityAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfStockOptionActivityAbstract"/>
    <loc xlink:type="locator" xlink:label="StockBasedCompensationDetailsScheduleofStockOptionActivityTable" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsScheduleofStockOptionActivityTable"/>
    <loc xlink:type="locator" xlink:label="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfStockOptionActivityAbstract" xlink:to="StockBasedCompensationDetailsScheduleofStockOptionActivityTable" 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/2023/elts/srt-2023.xsd#srt_StatementScenarioAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityTable" xlink:to="srt_StatementScenarioAxis" order="1.0"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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="StockBasedCompensationDetailsScheduleofStockOptionActivityTable" xlink:to="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" order="3.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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm" xlink:href="esp-20230630.xsd#esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm" 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/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" order="6.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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="StockIssuedDuringPeriodSharesStockOptionExercised" xlink:href="esp-20230630.xsd#esp_StockIssuedDuringPeriodSharesStockOptionExercised"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="StockIssuedDuringPeriodSharesStockOptionExercised" order="8.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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" order="9.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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" order="10.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod" xlink:href="esp-20230630.xsd#esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod" order="11.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_0" order="12.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_0" order="13.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" order="14.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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" order="15.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" order="16.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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" order="17.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/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" order="18.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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" order="19.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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" order="20.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice" order="21.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2" order="22.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue" order="23.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable">
    <loc xlink:type="locator" xlink:label="ScheduleOfChangesInNonVestedStockOptionsAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfChangesInNonVestedStockOptionsAbstract"/>
    <loc xlink:type="locator" xlink:label="StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsTable" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsTable"/>
    <loc xlink:type="locator" xlink:label="StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfChangesInNonVestedStockOptionsAbstract" xlink:to="StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsTable" 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/2023/elts/srt-2023.xsd#srt_StatementScenarioAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsTable" xlink:to="srt_StatementScenarioAxis" order="1.0"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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="StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsTable" xlink:to="StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_0" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofReservedCommonSharesforFutureIssuanceTable">
    <loc xlink:type="locator" xlink:label="ScheduleOfReservedCommonSharesForFutureIssuanceAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfReservedCommonSharesForFutureIssuanceAbstract"/>
    <loc xlink:type="locator" xlink:label="StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceTable" xlink:href="esp-20230630.xsd#esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceTable"/>
    <loc xlink:type="locator" xlink:label="StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems" xlink:href="esp-20230630.xsd#esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfReservedCommonSharesForFutureIssuanceAbstract" xlink:to="StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceTable" 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/2023/elts/srt-2023.xsd#srt_StatementScenarioAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceTable" xlink:to="srt_StatementScenarioAxis" order="1.0"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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="StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceTable" xlink:to="StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" order="0.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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable">
    <loc xlink:type="locator" xlink:label="ScheduleOfReconciliationOfTheNumeratorsAndDenominatorsOfTheBasicAndDilutedEarningsPerShareComputationsAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfReconciliationOfTheNumeratorsAndDenominatorsOfTheBasicAndDilutedEarningsPerShareComputationsAbstract"/>
    <loc xlink:type="locator" xlink:label="StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable" xlink:href="esp-20230630.xsd#esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable"/>
    <loc xlink:type="locator" xlink:label="StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems" xlink:href="esp-20230630.xsd#esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfReconciliationOfTheNumeratorsAndDenominatorsOfTheBasicAndDilutedEarningsPerShareComputationsAbstract" xlink:to="StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable" 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/2023/elts/srt-2023.xsd#srt_StatementScenarioAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable" xlink:to="srt_StatementScenarioAxis" order="1.0"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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="StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable" xlink:to="StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems" xlink:to="us-gaap_NetIncomeLoss" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareBasicAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasicAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems" 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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesIssuedBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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_WeightedAverageNumberOfSharesContingentlyIssuable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesContingentlyIssuable"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareBasicAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesContingentlyIssuable" order="5.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/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareBasicAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EarningsPerShareDilutedAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDilutedAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems" 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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.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/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased_0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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/2009/role/negatedLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation_0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareDilutedAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation_0" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_WeightedAverageNumberOfSharesContingentlyIssuable_0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesContingentlyIssuable"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareDilutedAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesContingentlyIssuable_0" order="5.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/2023/elts/us-gaap-2023.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="6.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/2023/elts/us-gaap-2023.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="7.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ScheduleofQuarterlyFinancialInformationTable">
    <loc xlink:type="locator" xlink:label="ScheduleOfQuarterlyFinancialInformationAbstract" xlink:href="esp-20230630.xsd#esp_ScheduleOfQuarterlyFinancialInformationAbstract"/>
    <loc xlink:type="locator" xlink:label="QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationTable" xlink:href="esp-20230630.xsd#esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationTable"/>
    <loc xlink:type="locator" xlink:label="QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems" xlink:href="esp-20230630.xsd#esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfQuarterlyFinancialInformationAbstract" xlink:to="QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="QuarterlyFinancialInformationAxis" xlink:href="esp-20230630.xsd#esp_QuarterlyFinancialInformationAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationTable" xlink:to="QuarterlyFinancialInformationAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="FirstQuarterMember" xlink:href="esp-20230630.xsd#esp_FirstQuarterMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="QuarterlyFinancialInformationAxis" xlink:to="FirstQuarterMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="SecondQuarterMember" xlink:href="esp-20230630.xsd#esp_SecondQuarterMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="QuarterlyFinancialInformationAxis" xlink:to="SecondQuarterMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="ThirdQuarterMember" xlink:href="esp-20230630.xsd#esp_ThirdQuarterMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="QuarterlyFinancialInformationAxis" xlink:to="ThirdQuarterMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="FourthQuarterMember" xlink:href="esp-20230630.xsd#esp_FourthQuarterMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="QuarterlyFinancialInformationAxis" xlink:to="FourthQuarterMember" 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="QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationTable" xlink:to="QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems" order="2.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/2023/elts/us-gaap-2023.xsd#us-gaap_Revenues"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems" xlink:to="us-gaap_Revenues" 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/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems" xlink:to="us-gaap_GrossProfit" order="1.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/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems" xlink:to="us-gaap_NetIncomeLoss" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="NetIncomePerShareAbstract" xlink:href="esp-20230630.xsd#esp_NetIncomePerShareAbstract"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems" xlink:to="NetIncomePerShareAbstract" order="3.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/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetIncomePerShareAbstract" 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/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetIncomePerShareAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/SummaryofSignificantAccountingPoliciesDetails">
    <loc xlink:type="locator" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/RevenueDetails">
    <loc xlink:type="locator" xlink:label="us-gaap_RevenuesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenuesAbstract"/>
    <loc xlink:type="locator" xlink:label="RevenueDetailsTable" xlink:href="esp-20230630.xsd#esp_RevenueDetailsTable"/>
    <loc xlink:type="locator" xlink:label="RevenueDetailsLineItems" xlink:href="esp-20230630.xsd#esp_RevenueDetailsLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenuesAbstract" xlink:to="RevenueDetailsTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="1.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/2023/elts/us-gaap-2023.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/2023/elts/us-gaap-2023.xsd#us-gaap_OrderOrProductionBacklogMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_OrderOrProductionBacklogMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="srt_StatementScenarioAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="srt_ScenarioUnspecifiedDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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-20230630.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-20230630.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/2023/elts/us-gaap-2023.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="3.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/2023/elts/us-gaap-2023.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-20230630.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"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueDetailsTable" xlink:to="RevenueDetailsLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_Revenues"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueDetailsLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiability"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueDetailsLineItems" xlink:to="us-gaap_ContractWithCustomerLiability" order="1.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/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueDetailsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="BacklogPercentageOfRecognitionsYearOne" xlink:href="esp-20230630.xsd#esp_BacklogPercentageOfRecognitionsYearOne"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueDetailsLineItems" xlink:to="BacklogPercentageOfRecognitionsYearOne" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="BacklogPercentageOfRecognitionsYearTwo" xlink:href="esp-20230630.xsd#esp_BacklogPercentageOfRecognitionsYearTwo"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueDetailsLineItems" xlink:to="BacklogPercentageOfRecognitionsYearTwo" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="BacklogPercentageOfRecognitionsYearThree" xlink:href="esp-20230630.xsd#esp_BacklogPercentageOfRecognitionsYearThree"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueDetailsLineItems" xlink:to="BacklogPercentageOfRecognitionsYearThree" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="BacklogPercentageOfRecognitions" xlink:href="esp-20230630.xsd#esp_BacklogPercentageOfRecognitions"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueDetailsLineItems" xlink:to="BacklogPercentageOfRecognitions" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/PropertyPlantandEquipmentDetails">
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <loc xlink:type="locator" xlink:label="PropertyPlantandEquipmentDetailsTable" xlink:href="esp-20230630.xsd#esp_PropertyPlantandEquipmentDetailsTable"/>
    <loc xlink:type="locator" xlink:label="PropertyPlantandEquipmentDetailsLineItems" xlink:href="esp-20230630.xsd#esp_PropertyPlantandEquipmentDetailsLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="PropertyPlantandEquipmentDetailsTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantandEquipmentDetailsTable" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" order="0.0"/>
    <loc xlink:type="locator" xlink:label="us-gaap_BuildingImprovementsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingImprovementsMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_BuildingImprovementsMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantandEquipmentDetailsTable" xlink:to="PropertyPlantandEquipmentDetailsLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_Depreciation" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Depreciation"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantandEquipmentDetailsLineItems" xlink:to="us-gaap_Depreciation" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EquipmentExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquipmentExpense"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantandEquipmentDetailsLineItems" xlink:to="us-gaap_EquipmentExpense" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantandEquipmentDetailsLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <loc xlink:type="locator" xlink:label="RevenueRecognitionMilestoneMethodRevenuesRecognized" xlink:href="esp-20230630.xsd#esp_RevenueRecognitionMilestoneMethodRevenuesRecognized"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantandEquipmentDetailsLineItems" xlink:to="RevenueRecognitionMilestoneMethodRevenuesRecognized" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/PensionExpenseDetails">
    <loc xlink:type="locator" xlink:label="us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_PensionAndOtherPostretirementBenefitExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PensionAndOtherPostretirementBenefitExpense"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:to="us-gaap_PensionAndOtherPostretirementBenefitExpense" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_MultiemployerPlanPensionSignificantPlanContribution" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MultiemployerPlanPensionSignificantPlanContribution"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:to="us-gaap_MultiemployerPlanPensionSignificantPlanContribution" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:to="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="DefinedContributionPlanEmployersMatchingContribution" xlink:href="esp-20230630.xsd#esp_DefinedContributionPlanEmployersMatchingContribution"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:to="DefinedContributionPlanEmployersMatchingContribution" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/SignificantCustomersDetails">
    <loc xlink:type="locator" xlink:label="SignificantCustomersAbstract" xlink:href="esp-20230630.xsd#esp_SignificantCustomersAbstract"/>
    <loc xlink:type="locator" xlink:label="SignificantCustomersDetailsTable" xlink:href="esp-20230630.xsd#esp_SignificantCustomersDetailsTable"/>
    <loc xlink:type="locator" xlink:label="SignificantCustomersDetailsLineItems" xlink:href="esp-20230630.xsd#esp_SignificantCustomersDetailsLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SignificantCustomersAbstract" xlink:to="SignificantCustomersDetailsTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SignificantCustomersDetailsTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_GeographicConcentrationRiskMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GeographicConcentrationRiskMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_GeographicConcentrationRiskMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="GeographicConcentrationRisk1Member" xlink:href="esp-20230630.xsd#esp_GeographicConcentrationRisk1Member"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="GeographicConcentrationRisk1Member" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SignificantCustomersDetailsTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SalesRevenueNetMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SalesRevenueNetMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_SalesRevenueNetMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AccountsReceivableMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_AccountsReceivableMember" 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="SignificantCustomersDetailsTable" xlink:to="SignificantCustomersDetailsLineItems" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="ConcentrationRiskPercentageOne" xlink:href="esp-20230630.xsd#esp_ConcentrationRiskPercentageOne"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SignificantCustomersDetailsLineItems" xlink:to="ConcentrationRiskPercentageOne" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SalesTypeLeaseRevenue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SalesTypeLeaseRevenue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SignificantCustomersDetailsLineItems" xlink:to="us-gaap_SalesTypeLeaseRevenue" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/EmployeeStockOwnershipPlanDetails">
    <loc xlink:type="locator" xlink:label="EmployeeStockOwnershipPlanAbstract" xlink:href="esp-20230630.xsd#esp_EmployeeStockOwnershipPlanAbstract"/>
    <loc xlink:type="locator" xlink:label="EmployeeStockOwnershipPlanDetailsTable" xlink:href="esp-20230630.xsd#esp_EmployeeStockOwnershipPlanDetailsTable"/>
    <loc xlink:type="locator" xlink:label="EmployeeStockOwnershipPlanDetailsLineItems" xlink:href="esp-20230630.xsd#esp_EmployeeStockOwnershipPlanDetailsLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EmployeeStockOwnershipPlanAbstract" 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/2023/elts/us-gaap-2023.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="us-gaap_EmployeeStockOwnershipPlanESOPPlanDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOwnershipPlanESOPPlanDomain"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPPlanDomain" order="0.0"/>
    <loc xlink:type="locator" xlink:label="EmployeeStockOwnershipPlanMember" xlink:href="esp-20230630.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="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="EmployeeStockOwnershipPlanDetailsTable" xlink:to="EmployeeStockOwnershipPlanDetailsLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeStockOwnershipPlanESOPPlanDescription" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOwnershipPlanESOPPlanDescription"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EmployeeStockOwnershipPlanDetailsLineItems" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPPlanDescription" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EmployeeStockOwnershipPlanDetailsLineItems" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage" 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/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EmployeeStockOwnershipPlanDetailsLineItems" xlink:to="us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense" order="2.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/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EmployeeStockOwnershipPlanDetailsLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/StockBasedCompensationDetails">
    <loc xlink:type="locator" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <loc xlink:type="locator" xlink:label="StockBasedCompensationDetailsTable" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsTable"/>
    <loc xlink:type="locator" xlink:label="StockBasedCompensationDetailsLineItems" xlink:href="esp-20230630.xsd#esp_StockBasedCompensationDetailsLineItems"/>
    <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_AwardTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="1.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/2023/elts/us-gaap-2023.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-20230630.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-20230630.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/2023/elts/us-gaap-2023.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/terseLabel"/>
    <loc xlink:type="locator" xlink:label="RestrictedStockPlanMember" xlink:href="esp-20230630.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"/>
    <loc xlink:type="locator" xlink:label="srt_TitleOfIndividualAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.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/2023/elts/srt-2023.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-20230630.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-20230630.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/2023/elts/srt-2023.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/2023/elts/srt-2023.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/2023/elts/srt-2023.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_PlanNameAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.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="4.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/2023/elts/us-gaap-2023.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-20230630.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-20230630.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"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsTable" xlink:to="StockBasedCompensationDetailsLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" 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/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsLineItems" 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/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts" xlink:href="esp-20230630.xsd#esp_DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsLineItems" xlink:to="DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts" order="4.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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear" xlink:href="esp-20230630.xsd#esp_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsLineItems" xlink:to="NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear" xlink:href="esp-20230630.xsd#esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsLineItems" xlink:to="PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear" order="7.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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" order="8.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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <loc xlink:type="locator" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber" xlink:href="esp-20230630.xsd#esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber" order="10.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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" order="11.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/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockDividendsPerShareDeclared"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsLineItems" xlink:to="us-gaap_CommonStockDividendsPerShareDeclared" 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/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockBasedCompensationDetailsLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" order="13.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/ConcentrationofCreditRiskDetails">
    <loc xlink:type="locator" xlink:label="us-gaap_RisksAndUncertaintiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RisksAndUncertaintiesAbstract"/>
    <loc xlink:type="locator" xlink:label="ConcentrationofCreditRiskDetailsTable" xlink:href="esp-20230630.xsd#esp_ConcentrationofCreditRiskDetailsTable"/>
    <loc xlink:type="locator" xlink:label="ConcentrationofCreditRiskDetailsLineItems" xlink:href="esp-20230630.xsd#esp_ConcentrationofCreditRiskDetailsLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RisksAndUncertaintiesAbstract" xlink:to="ConcentrationofCreditRiskDetailsTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationofCreditRiskDetailsTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_TradeAccountsReceivableMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TradeAccountsReceivableMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_TradeAccountsReceivableMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationofCreditRiskDetailsTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_SalesRevenueNetMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SalesRevenueNetMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_SalesRevenueNetMember" 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="ConcentrationofCreditRiskDetailsTable" xlink:to="ConcentrationofCreditRiskDetailsLineItems" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="ConcentrationRiskPercentageOne" xlink:href="esp-20230630.xsd#esp_ConcentrationRiskPercentageOne"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationofCreditRiskDetailsLineItems" xlink:to="ConcentrationRiskPercentageOne" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <loc xlink:type="locator" xlink:label="ConcentrationRiskNumberOfCustomers" xlink:href="esp-20230630.xsd#esp_ConcentrationRiskNumberOfCustomers"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationofCreditRiskDetailsLineItems" xlink:to="ConcentrationRiskNumberOfCustomers" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/CommitmentsandContingenciesDetails">
    <loc xlink:type="locator" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="CommitmentsandContingenciesDetailsTable" xlink:href="esp-20230630.xsd#esp_CommitmentsandContingenciesDetailsTable"/>
    <loc xlink:type="locator" xlink:label="CommitmentsandContingenciesDetailsLineItems" xlink:href="esp-20230630.xsd#esp_CommitmentsandContingenciesDetailsLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="CommitmentsandContingenciesDetailsTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesByNatureOfContingencyAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CommitmentsandContingenciesDetailsTable" xlink:to="us-gaap_LossContingenciesByNatureOfContingencyAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_StandbyLettersOfCreditMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StandbyLettersOfCreditMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:to="us-gaap_StandbyLettersOfCreditMember" 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="CommitmentsandContingenciesDetailsTable" xlink:to="CommitmentsandContingenciesDetailsLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LossContingencyAccrualAtCarryingValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyAccrualAtCarryingValue"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CommitmentsandContingenciesDetailsLineItems" xlink:to="us-gaap_LossContingencyAccrualAtCarryingValue" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/StockholdersEquityDetails">
    <loc xlink:type="locator" xlink:label="us-gaap_StockholdersEquityNoteAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityNoteAbstract"/>
    <loc xlink:type="locator" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" 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/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockDividendsPerShareCashPaid"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="us-gaap_CommonStockDividendsPerShareCashPaid" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DividendsCash" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DividendsCash"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="us-gaap_DividendsCash" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/LineofCreditDetails">
    <loc xlink:type="locator" xlink:label="us-gaap_DebtDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract"/>
    <loc xlink:type="locator" xlink:label="LineofCreditDetailsTable" xlink:href="esp-20230630.xsd#esp_LineofCreditDetailsTable"/>
    <loc xlink:type="locator" xlink:label="LineofCreditDetailsLineItems" xlink:href="esp-20230630.xsd#esp_LineofCreditDetailsLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="LineofCreditDetailsTable" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_VariableRateAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateAxis"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LineofCreditDetailsTable" xlink:to="us-gaap_VariableRateAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_VariableRateDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateDomain"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain" order="0.0"/>
    <loc xlink:type="locator" xlink:label="LondonInterbankOfferedRatesLIBORMember" xlink:href="esp-20230630.xsd#esp_LondonInterbankOfferedRatesLIBORMember"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateAxis" xlink:to="LondonInterbankOfferedRatesLIBORMember" 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="LineofCreditDetailsTable" xlink:to="LineofCreditDetailsLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <loc xlink:type="locator" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LineofCreditDetailsLineItems" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LineofCreditDetailsLineItems" xlink:to="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
  <presentationLink xlink:type="extended" xlink:role="http://espey.com/role/DocumentAndEntityInformation">
    <loc xlink:type="locator" xlink:label="DocumentAndEntityInformationAbstract" xlink:href="esp-20230630.xsd#esp_DocumentAndEntityInformationAbstract"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentInformationTable" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentInformationTable"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentInformationLineItems" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentInformationLineItems"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DocumentAndEntityInformationAbstract" xlink:to="dei_DocumentInformationTable" order="1.0"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationTable" xlink:to="dei_DocumentInformationLineItems" order="1.0"/>
    <loc xlink:type="locator" xlink:label="dei_EntityRegistrantName" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityRegistrantName" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_TradingSymbol" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_TradingSymbol" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentType" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentType" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_CurrentFiscalYearEndDate" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_CurrentFiscalYearEndDate" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_EntityCommonStockSharesOutstanding" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCommonStockSharesOutstanding" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_EntityPublicFloat" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityPublicFloat"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityPublicFloat" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_AmendmentFlag" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AmendmentFlag" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_EntityCentralIndexKey" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCentralIndexKey" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_EntityCurrentReportingStatus" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCurrentReportingStatus" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_EntityVoluntaryFilers" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityVoluntaryFilers"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityVoluntaryFilers" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_EntityFilerCategory" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityFilerCategory" order="10.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_EntityWellKnownSeasonedIssuer" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityWellKnownSeasonedIssuer"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityWellKnownSeasonedIssuer" order="11.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentPeriodEndDate" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentPeriodEndDate" order="12.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentFiscalYearFocus" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalYearFocus" order="13.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentFiscalPeriodFocus" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalPeriodFocus" order="14.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_EntitySmallBusiness" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntitySmallBusiness" order="15.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_EntityEmergingGrowthCompany" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityEmergingGrowthCompany" order="16.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_EntityShellCompany" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityShellCompany" order="17.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_IcfrAuditorAttestationFlag" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_IcfrAuditorAttestationFlag"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_IcfrAuditorAttestationFlag" order="18.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentAnnualReport" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentAnnualReport"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentAnnualReport" order="19.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentTransitionReport" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentTransitionReport" order="20.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_EntityFileNumber" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityFileNumber" order="21.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_EntityIncorporationStateCountryCode" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityIncorporationStateCountryCode" order="22.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_EntityTaxIdentificationNumber" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityTaxIdentificationNumber" order="23.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_EntityAddressAddressLine1" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressAddressLine1" order="24.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_EntityAddressCityOrTown" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressCityOrTown" order="25.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_EntityAddressStateOrProvince" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressStateOrProvince" order="26.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_EntityAddressPostalZipCode" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressPostalZipCode" order="27.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_CityAreaCode" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_CityAreaCode" order="28.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_LocalPhoneNumber" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_LocalPhoneNumber" order="29.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_Security12bTitle" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_Security12bTitle" order="30.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_SecurityExchangeName" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_SecurityExchangeName" order="31.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_EntityInteractiveDataCurrent" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityInteractiveDataCurrent" order="32.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_DocumentFinStmtErrorCorrectionFlag" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFinStmtErrorCorrectionFlag"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFinStmtErrorCorrectionFlag" order="33.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_AuditorFirmId" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AuditorFirmId"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AuditorFirmId" order="34.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_AuditorName" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AuditorName"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AuditorName" order="35.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <loc xlink:type="locator" xlink:label="dei_AuditorLocation" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AuditorLocation"/>
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AuditorLocation" order="36.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </presentationLink>
</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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216638601888">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Document And Entity Information - USD ($)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Sep. 19, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</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>
<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_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">ESPEY MFG. & ELECTRONICS CORP.<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_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">ESP<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_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-K<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_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>
<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,706,633<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_EntityPublicFloat', window );">Entity Public Float</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 27,145,853<span></span>
</td>
</tr>
<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>
<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_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0000033533<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_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<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_dei_EntityVoluntaryFilers', window );">Entity Voluntary Filers</a></td>
<td class="text">No<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_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Non-accelerated Filer<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_dei_EntityWellKnownSeasonedIssuer', window );">Entity Well-known Seasoned Issuer</a></td>
<td class="text">No<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_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Jun. 30,  2023<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_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2023<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_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">FY<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_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">true<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_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<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_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<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_dei_IcfrAuditorAttestationFlag', window );">ICFR Auditor Attestation Flag</a></td>
<td class="text">false<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_dei_DocumentAnnualReport', window );">Document Annual Report</a></td>
<td class="text">true<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_dei_DocumentTransitionReport', window );">Document Transition Report</a></td>
<td class="text">false<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_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">1-4383<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_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>
<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_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">14-1387171<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_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>
<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_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Saratoga Springs<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_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">NY<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_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">12866<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_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">518<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_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">584-4100<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_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>
<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">NYSE<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_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<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_dei_DocumentFinStmtErrorCorrectionFlag', window );">Document Financial Statement Error Correction [Flag]</a></td>
<td class="text">false<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_dei_AuditorFirmId', window );">Auditor Firm ID</a></td>
<td class="text">317<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_dei_AuditorName', window );">Auditor Name</a></td>
<td class="text">Freed Maxick CPAs, P.C.<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_dei_AuditorLocation', window );">Auditor Location</a></td>
<td class="text">Buffalo, New York<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_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_AuditorFirmId">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>PCAOB issued Audit Firm Identifier</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-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_AuditorFirmId</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:nonemptySequenceNumberItemType</td>
</tr>
<tr>
<td><strong> Balance 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_AuditorLocation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_AuditorLocation</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:internationalNameItemType</td>
</tr>
<tr>
<td><strong> Balance 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_AuditorName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_AuditorName</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:internationalNameItemType</td>
</tr>
<tr>
<td><strong> Balance 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_DocumentAnnualReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 annual 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-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_DocumentAnnualReport</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_DocumentFinStmtErrorCorrectionFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 whether any of the financial statement period in the filing include a restatement due to error correction.</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-K<br> -Number 229<br> -Section 402<br> -Subsection w<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 4: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_DocumentFinStmtErrorCorrectionFlag</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_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_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_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_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_EntityPublicFloat">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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.</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_EntityPublicFloat</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: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_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_EntityVoluntaryFilers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.</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_EntityVoluntaryFilers</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_EntityWellKnownSeasonedIssuer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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' 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.</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 Securities Act<br> -Number 230<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_EntityWellKnownSeasonedIssuer</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_IcfrAuditorAttestationFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_IcfrAuditorAttestationFlag</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_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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216635897984">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Balance Sheets - USD ($)<br></strong></div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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">$ 2,748,755<span></span>
</td>
<td class="nump">$ 8,104,060<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Investment securities</a></td>
<td class="nump">11,964,673<span></span>
</td>
<td class="nump">3,708,779<span></span>
</td>
</tr>
<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, net of allowance of $3,000</a></td>
<td class="nump">5,755,282<span></span>
</td>
<td class="nump">5,733,174<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxesReceivable', window );">Income tax receivable</a></td>
<td class="nump">35,666<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_esp_InventoriesAbstract', window );"><strong>Inventories:</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_InventoryRawMaterials', window );">Raw materials</a></td>
<td class="nump">1,889,702<span></span>
</td>
<td class="nump">2,037,483<span></span>
</td>
</tr>
<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_InventoryWorkInProcess', window );">Work-in-process</a></td>
<td class="nump">681,300<span></span>
</td>
<td class="nump">315,547<span></span>
</td>
</tr>
<tr class="re">
<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">17,318,579<span></span>
</td>
<td class="nump">16,207,419<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_InventoryNet', window );">Total inventories</a></td>
<td class="nump">19,889,581<span></span>
</td>
<td class="nump">18,560,449<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent', window );">Prepaid expenses and other current assets</a></td>
<td class="nump">4,282,477<span></span>
</td>
<td class="nump">992,774<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">44,676,434<span></span>
</td>
<td class="nump">37,099,236<span></span>
</td>
</tr>
<tr class="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">2,825,089<span></span>
</td>
<td class="nump">2,797,993<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">47,501,523<span></span>
</td>
<td class="nump">39,897,229<span></span>
</td>
</tr>
<tr class="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">1,212,375<span></span>
</td>
<td class="nump">2,079,177<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_AccruedExpensesAbstract', 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">890,748<span></span>
</td>
<td class="nump">627,187<span></span>
</td>
</tr>
<tr class="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">685,188<span></span>
</td>
<td class="nump">666,380<span></span>
</td>
</tr>
<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_OtherEmployeeRelatedLiabilitiesCurrent', window );">Other</a></td>
<td class="nump">547,747<span></span>
</td>
<td class="nump">752,554<span></span>
</td>
</tr>
<tr class="re">
<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">66,042<span></span>
</td>
<td class="nump">55,292<span></span>
</td>
</tr>
<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_ContractWithCustomerLiabilityCurrent', window );">Contract liabilities</a></td>
<td class="nump">8,081,838<span></span>
</td>
<td class="nump">3,384,474<span></span>
</td>
</tr>
<tr class="re">
<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="text"> <span></span>
</td>
<td class="nump">54,722<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_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">11,483,938<span></span>
</td>
<td class="nump">7,619,786<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_DeferredTaxLiability', window );">Deferred tax liabilities</a></td>
<td class="nump">137,827<span></span>
</td>
<td class="nump">177,829<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">11,621,765<span></span>
</td>
<td class="nump">7,797,615<span></span>
</td>
</tr>
<tr class="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 14)</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 );">Common stock, par value $.33-1/3 per share Authorized 10,000,000 shares; Issued 3,129,874 shares as of June 30, 2023 and 2022. Outstanding 2,702,633 as of June 30, 2023 and 2022 (includes 233,645 and 256,293 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">23,283,245<span></span>
</td>
<td class="nump">23,104,693<span></span>
</td>
</tr>
<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 loss</a></td>
<td class="num">(2,429)<span></span>
</td>
<td class="num">(1,932)<span></span>
</td>
</tr>
<tr class="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">21,867,720<span></span>
</td>
<td class="nump">18,679,857<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">46,191,827<span></span>
</td>
<td class="nump">42,825,909<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">(4,273,378)<span></span>
</td>
<td class="num">(4,687,604)<span></span>
</td>
</tr>
<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 427,241 shares of common stock in treasury as of June 30, 2023 and 2022</a></td>
<td class="num">(6,038,691)<span></span>
</td>
<td class="num">(6,038,691)<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' equity</a></td>
<td class="nump">35,879,758<span></span>
</td>
<td class="nump">32,099,614<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">$ 47,501,523<span></span>
</td>
<td class="nump">$ 39,897,229<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_AccruedExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_AccruedExpensesAbstract</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_DeferredTaxLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 liabilities 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_DeferredTaxLiability</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_InventoriesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_InventoriesAbstract</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_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://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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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/2003/role/disclosureRef<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><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481990/310-10-45-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_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_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> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<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://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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<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_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> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<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/2147479440/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>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</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/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/2147480167/946-830-55-12<br><br>Reference 8: 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/2147479440/944-210-S99-1<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> -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 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/2147479617/946-210-S99-1<br><br>Reference 11: 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 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/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 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/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 24: 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 25: 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 (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 26: 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/2147479853/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>Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</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_AvailableForSaleSecuritiesDebtSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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).</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 (aa)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<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/2147481830/320-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 4: 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_AvailableForSaleSecuritiesDebtSecurities</td>
</tr>
<tr>
<td style="padding-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://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/2147479440/944-210-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(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.17)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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)(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncomeTaxesReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 due within one year of the balance sheet date (or one operating cycle, if longer) from tax authorities as of the balance sheet date representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes.</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(3)(a)(4))<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 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.10)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/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_IncomeTaxesReceivable</td>
</tr>
<tr>
<td style="padding-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_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_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>Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.</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 (c)<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 (b)<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 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 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 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/2147480167/946-830-55-12<br><br>Reference 8: 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/2147479617/946-210-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/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 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)(iv))<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)(5))<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 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 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<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)(B))<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)(iv))<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)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: 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 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 21: 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><br>Reference 22: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19-26)<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_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/2147479440/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/2147479853/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://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 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 (b)<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 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 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 8: http://www.xbrl.org/2003/role/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 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/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 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)(iv))<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)(5))<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 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 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<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)(B))<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)(iv))<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)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: 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 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 21: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<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/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)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 4: 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/2147480842/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://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 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 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 (h)(2)<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 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 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<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(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 7: 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 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(30)(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_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 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/2147480167/946-830-55-12<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 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-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 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 5: 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/2147483575/946-220-S99-3<br><br>Reference 6: 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/2147483575/946-220-S99-3<br><br>Reference 7: 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/2147483575/946-220-S99-3<br><br>Reference 8: 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 9: 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 10: 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 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 13: 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 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> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19,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_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> -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 2: 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><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29,30)<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_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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216636141936">
<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>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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,702,633<span></span>
</td>
<td class="nump">2,702,633<span></span>
</td>
</tr>
<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">233,645<span></span>
</td>
<td class="nump">256,293<span></span>
</td>
</tr>
<tr class="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">427,241<span></span>
</td>
<td class="nump">427,241<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://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/2147479617/946-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(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_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://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/2147479617/946-210-S99-2<br><br>Reference 3: 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/2147483575/946-220-S99-3<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(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 5: 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/2147483575/946-220-S99-3<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(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_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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216635870144">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Statements of Comprehensive Income - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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>
</tr>
<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">$ 35,592,323<span></span>
</td>
<td class="nump">$ 32,104,774<span></span>
</td>
</tr>
<tr class="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">27,541,785<span></span>
</td>
<td class="nump">26,632,616<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">8,050,538<span></span>
</td>
<td class="nump">5,472,158<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SellingGeneralAndAdministrativeExpense', window );">Selling, general and administrative expenses</a></td>
<td class="nump">3,750,524<span></span>
</td>
<td class="nump">3,942,991<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">4,300,014<span></span>
</td>
<td class="nump">1,529,167<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherIncomeAbstract', window );"><strong>Other income</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_InvestmentIncomeInterestAndDividend', window );">Interest income</a></td>
<td class="nump">359,617<span></span>
</td>
<td class="nump">12,153<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncome', window );">Other</a></td>
<td class="nump">46,836<span></span>
</td>
<td class="nump">51,761<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">406,453<span></span>
</td>
<td class="nump">63,914<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_IncomeLossAttributableToParent', window );">Income before provision for income taxes</a></td>
<td class="nump">4,706,467<span></span>
</td>
<td class="nump">1,593,081<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Provision for income taxes</a></td>
<td class="nump">1,029,336<span></span>
</td>
<td class="nump">327,954<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">3,677,131<span></span>
</td>
<td class="nump">1,265,127<span></span>
</td>
</tr>
<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 (loss), net of tax:</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_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax', window );">Unrealized (loss) gain on investment securities</a></td>
<td class="num">(497)<span></span>
</td>
<td class="nump">429<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">$ 3,676,634<span></span>
</td>
<td class="nump">$ 1,265,556<span></span>
</td>
</tr>
<tr class="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>
</tr>
<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">$ 1.5<span></span>
</td>
<td class="nump">$ 0.52<span></span>
</td>
</tr>
<tr class="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">$ 1.49<span></span>
</td>
<td class="nump">$ 0.52<span></span>
</td>
</tr>
<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>
</tr>
<tr class="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,454,856<span></span>
</td>
<td class="nump">2,431,904<span></span>
</td>
</tr>
<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,471,016<span></span>
</td>
<td class="nump">2,431,904<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_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/2147483589/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/2147483586/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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate cost of goods produced and sold and services rendered during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 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 2: 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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 5: 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 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)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 7: 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 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)(5))<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 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 10: 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 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)(iii)(B))<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)(iv))<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)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 14: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: 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 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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 14: 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/2147483589/942-220-S99-1<br><br>Reference 15: 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/2147483586/944-220-S99-1<br><br>Reference 16: 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 17: 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 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: 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 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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/2147483589/942-220-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 15: 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 16: 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/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 2: 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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 5: http://www.xbrl.org/2003/role/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 6: 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 7: 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 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)(iv))<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)(5))<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 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 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)(iii)(A))<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)(B))<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)(iv))<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)(5))<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 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 16: 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 (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 17: 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 18: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 19: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<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_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_IncomeLossAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 income (loss) attributable to parent. Includes, but is not limited to, income (loss) from continuing operations, discontinued operations and equity method investments.</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 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<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.20)<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_IncomeLossAttributableToParent</td>
</tr>
<tr>
<td style="padding-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 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 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 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 4: 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 5: 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 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(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 7: 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 8: 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_InvestmentIncomeInterestAndDividend">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 and dividend 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://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(a),(b))<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_InvestmentIncomeInterestAndDividend</td>
</tr>
<tr>
<td style="padding-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 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 2: 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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 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 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 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 (f)<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 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 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 11: 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 12: 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 13: 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/2147480167/946-830-55-10<br><br>Reference 14: 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/2147483581/946-220-45-7<br><br>Reference 15: 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/2147483586/944-220-S99-1<br><br>Reference 16: 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 17: 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/2147483575/946-220-S99-1<br><br>Reference 18: 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/2147483575/946-220-S99-3<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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: 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 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)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<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 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 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)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<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)(5))<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 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 30: 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 (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: 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 32: 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 33: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: 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 35: 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 36: 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 37: 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 38: 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 39: 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/2147483589/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_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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 2: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<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 (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 4: 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 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 (c)<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_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_OtherIncomeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OtherIncomeAbstract</td>
</tr>
<tr>
<td style="padding-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_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/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 2: 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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 5: 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 6: 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 7: 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 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)(iv))<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)(5))<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 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 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)(iii)(A))<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)(B))<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)(iv))<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)(5))<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 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 16: 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 17: 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 18: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 19: 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 20: 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 21: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<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 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 23: 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/2147479557/942-235-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_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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216635066160">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Statements of Changes in Stockholders' Equity - 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 (Loss) Income</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, 2021</a></td>
<td class="nump">$ 1,043,291<span></span>
</td>
<td class="nump">$ 23,026,096<span></span>
</td>
<td class="num">$ (2,361)<span></span>
</td>
<td class="nump">$ 17,414,730<span></span>
</td>
<td class="num">$ (6,038,691)<span></span>
</td>
<td class="num">$ (5,110,770)<span></span>
</td>
<td class="nump">$ 30,332,295<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, 2021</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_ComprehensiveIncomeNetOfTaxAbstract', window );"><strong>Comprehensive 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>
<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</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,265,127<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,265,127<span></span>
</td>
</tr>
<tr class="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, net of tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">429<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">429<span></span>
</td>
</tr>
<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,265,556<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationGross', window );">Stock-based compensation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">176,696<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">176,696<span></span>
</td>
</tr>
<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_StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan', window );">Reduction of unearned ESOP shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(98,099)<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,166<span></span>
</td>
<td class="nump">325,067<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, 2022</a></td>
<td class="nump">$ 1,043,291<span></span>
</td>
<td class="nump">23,104,693<span></span>
</td>
<td class="num">(1,932)<span></span>
</td>
<td class="nump">18,679,857<span></span>
</td>
<td class="num">$ (6,038,691)<span></span>
</td>
<td class="num">(4,687,604)<span></span>
</td>
<td class="nump">$ 32,099,614<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, 2022</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="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_ComprehensiveIncomeNetOfTaxAbstract', window );"><strong>Comprehensive 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>
<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</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,677,131<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,677,131<span></span>
</td>
</tr>
<tr class="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, net of tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(497)<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">(497)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Total comprehensive income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,676,634<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationGross', window );">Stock-based compensation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">227,132<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">227,132<span></span>
</td>
</tr>
<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_DividendsCommonStockCash', window );">Dividends paid on common stock $0.20 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">(489,268)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(489,268)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan', window );">Reduction of unearned ESOP shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(48,580)<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">414,226<span></span>
</td>
<td class="nump">365,646<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, 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="nump">2,702,633<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_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://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/2147479617/946-210-S99-2<br><br>Reference 3: 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/2147483575/946-220-S99-3<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(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 5: 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/2147483575/946-220-S99-3<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(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_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/2147483589/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/2147483586/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://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_ComprehensiveIncomeNetOfTaxAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ComprehensiveIncomeNetOfTaxAbstract</td>
</tr>
<tr>
<td style="padding-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_DividendsCommonStockCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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.</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_DividendsCommonStockCash</td>
</tr>
<tr>
<td style="padding-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 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 2: 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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 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 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 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 (f)<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 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 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 11: 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 12: 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 13: 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/2147480167/946-830-55-10<br><br>Reference 14: 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/2147483581/946-220-45-7<br><br>Reference 15: 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/2147483586/944-220-S99-1<br><br>Reference 16: 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 17: 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/2147483575/946-220-S99-1<br><br>Reference 18: 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/2147483575/946-220-S99-3<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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: 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 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)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<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 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 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)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<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)(5))<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 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 30: 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 (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: 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 32: 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 33: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: 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 35: 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 36: 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 37: 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 38: 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 39: 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/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax, of gain (loss) for (increase) decrease in value of benefit obligation for change in actuarial assumptions and increase (decrease) in value of plan assets from experience different from that assumed of defined benefit plan, that has not been recognized in net periodic benefit (cost) credit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-11<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 715<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480506/715-20-50-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (i)<br> -SubTopic 10<br> -Topic 220<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_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_StockGrantedDuringPeriodValueSharebasedCompensationGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, before forfeiture, of shares granted under share-based payment arrangement. Excludes employee stock ownership plan (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;">us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationGross</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 value of stock issued during the period as a result of 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> -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 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 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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_StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 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/2147480167/946-830-55-12<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 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-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 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 5: 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/2147483575/946-220-S99-3<br><br>Reference 6: 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/2147483575/946-220-S99-3<br><br>Reference 7: 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/2147483575/946-220-S99-3<br><br>Reference 8: 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 9: 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 10: 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 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 13: 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 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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216640796032">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Statements of Changes in Stockholders' Equity (Parentheticals) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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>
</tr>
<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, net of tax</a></td>
<td class="nump">$ 104<span></span>
</td>
<td class="nump">$ 90<span></span>
</td>
</tr>
<tr class="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 declared per share (in Dollars per share)</a></td>
<td class="nump">$ 0.2<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_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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216635813520">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Statements of Cash Flows - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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,677,131<span></span>
</td>
<td class="nump">$ 1,265,127<span></span>
</td>
</tr>
<tr class="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">227,132<span></span>
</td>
<td class="nump">176,696<span></span>
</td>
</tr>
<tr class="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">484,920<span></span>
</td>
<td class="nump">494,635<span></span>
</td>
</tr>
<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">365,646<span></span>
</td>
<td class="nump">325,067<span></span>
</td>
</tr>
<tr class="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) expense</a></td>
<td class="num">(40,002)<span></span>
</td>
<td class="nump">9,271<span></span>
</td>
</tr>
<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_GainLossOnDispositionOfAssets', window );">Gain on disposal of property, plant and equipment</a></td>
<td class="num">(2,500)<span></span>
</td>
<td class="num">(119)<span></span>
</td>
</tr>
<tr class="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 receivables</a></td>
<td class="num">(22,108)<span></span>
</td>
<td class="num">(379,393)<span></span>
</td>
</tr>
<tr class="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 );">(Increase) decrease in income tax receivable</a></td>
<td class="num">(35,666)<span></span>
</td>
<td class="nump">249,602<span></span>
</td>
</tr>
<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 );">(Increase) decrease in inventories</a></td>
<td class="num">(1,329,132)<span></span>
</td>
<td class="nump">231,443<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets', window );">Increase in prepaid expenses and other current assets</a></td>
<td class="num">(3,289,703)<span></span>
</td>
<td class="num">(292,477)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayable', window );">Decrease in accounts payable</a></td>
<td class="num">(866,802)<span></span>
</td>
<td class="num">(638,996)<span></span>
</td>
</tr>
<tr class="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 );">Increase in accrued salaries and wages</a></td>
<td class="nump">263,561<span></span>
</td>
<td class="nump">151,520<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">18,808<span></span>
</td>
<td class="num">(6,231)<span></span>
</td>
</tr>
<tr class="re">
<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 );">(Decrease) increase in other accrued expenses</a></td>
<td class="num">(204,807)<span></span>
</td>
<td class="nump">626,540<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_IncreasedecreaseInPayrollAndOtherTaxesWithheld', window );">Increase (decrease) in payroll and other taxes withheld</a></td>
<td class="nump">10,750<span></span>
</td>
<td class="num">(354,589)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInContractWithCustomerLiability', window );">Increase in contract liabilities</a></td>
<td class="nump">4,697,364<span></span>
</td>
<td class="nump">306,869<span></span>
</td>
</tr>
<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_IncreaseDecreaseInAccruedIncomeTaxesPayable', window );">(Decrease) increase in income taxes payable</a></td>
<td class="num">(54,722)<span></span>
</td>
<td class="nump">54,722<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_NetCashProvidedByUsedInOperatingActivities', window );">Net cash provided by operating activities</a></td>
<td class="nump">3,899,870<span></span>
</td>
<td class="nump">2,219,687<span></span>
</td>
</tr>
<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_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="re">
<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">(512,016)<span></span>
</td>
<td class="num">(303,561)<span></span>
</td>
</tr>
<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_ProceedsFromSaleOfOtherProductiveAssets', window );">Proceeds from sale of property, plant and equipment</a></td>
<td class="nump">2,500<span></span>
</td>
<td class="nump">2,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_PaymentsToAcquireInvestments', window );">Purchase of investment securities</a></td>
<td class="num">(15,902,014)<span></span>
</td>
<td class="num">(4,237,778)<span></span>
</td>
</tr>
<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">7,645,623<span></span>
</td>
<td class="nump">3,621,000<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash used in investing activities</a></td>
<td class="num">(8,765,907)<span></span>
</td>
<td class="num">(918,339)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_CashFlowsFromFinancingActivitiesAbstract', 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 paid on common stock</a></td>
<td class="num">(489,268)<span></span>
</td>
<td class="text"> <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_NetCashProvidedByUsedInFinancingActivities', window );">Net cash used in financing activities</a></td>
<td class="num">(489,268)<span></span>
</td>
<td class="text"> <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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect', window );">(Decrease) increase in cash and short term investments</a></td>
<td class="num">(5,355,305)<span></span>
</td>
<td class="nump">1,301,348<span></span>
</td>
</tr>
<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, beginning of the year</a></td>
<td class="nump">8,104,060<span></span>
</td>
<td class="nump">6,802,712<span></span>
</td>
</tr>
<tr class="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, end of the year</a></td>
<td class="nump">2,748,755<span></span>
</td>
<td class="nump">8,104,060<span></span>
</td>
</tr>
<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_SupplementalCashFlowInformationAbstract', 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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxesPaid', window );">Income taxes paid net of refunds</a></td>
<td class="nump">$ 1,159,595<span></span>
</td>
<td class="nump">$ 14,365<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_CashFlowsFromFinancingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_CashFlowsFromFinancingActivitiesAbstract</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_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_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_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/2147481877/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> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 4: 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.Fact.1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<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 6: 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_GainLossOnDispositionOfAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, excluding 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://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 (b)<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 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482130/360-10-45-5<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 360<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/2147482099/360-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_GainLossOnDispositionOfAssets</td>
</tr>
<tr>
<td style="padding-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_IncomeTaxesPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cash paid during the current period to foreign, federal, state, and local authorities as taxes on income.</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 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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (f)<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_IncomeTaxesPaid</td>
</tr>
<tr>
<td style="padding-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/2147482312/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_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 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 2: 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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 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 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 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 (f)<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 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 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 11: 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 12: 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 13: 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/2147480167/946-830-55-10<br><br>Reference 14: 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/2147483581/946-220-45-7<br><br>Reference 15: 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/2147483586/944-220-S99-1<br><br>Reference 16: 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 17: 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/2147483575/946-220-S99-1<br><br>Reference 18: 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/2147483575/946-220-S99-3<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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: 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 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)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<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 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 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)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<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)(5))<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 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 30: 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 (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: 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 32: 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 33: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: 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 35: 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 36: 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 37: 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 38: 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 39: 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/2147483589/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> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<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_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_ProceedsFromSaleOfOtherProductiveAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the sale of tangible or intangible assets used to produce goods or deliver services, 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> -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_ProceedsFromSaleOfOtherProductiveAssets</td>
</tr>
<tr>
<td style="padding-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_SupplementalCashFlowInformationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SupplementalCashFlowInformationAbstract</td>
</tr>
<tr>
<td style="padding-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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216644789520">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Nature of Operations<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_esp_NatureOfOperationsAbstract', window );"><strong>Nature of Operations [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_NatureOfOperations', window );">Nature of Operations</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt 0.75in; text-align: justify; text-indent: -0.75in">Note 1. Nature
of Operations</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 12pt; text-align: justify">Espey Mfg. &amp; Electronics Corp. (the Company)
is a manufacturer of electronic equipment used primarily in military and industrial applications. The principal markets for the Company's
products are companies that provide electronic support to both military and industrial applications across the United States and at some
international locations.</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_NatureOfOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_NatureOfOperationsAbstract</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_us-gaap_NatureOfOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward.</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> -Name Accounting Standards Codification<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//275/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-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_NatureOfOperations</td>
</tr>
<tr>
<td style="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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216644773312">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_AccountingPoliciesAbstract', window );"><strong>Summary of Significant Accounting Policies [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_SignificantAccountingPoliciesTextBlock', window );">Summary of Significant Accounting Policies</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt">Note 2. Summary of Significant Accounting Policies</p>

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">The majority of our sales are generated from military
contracts from defense companies, the 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>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 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>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 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>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 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>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 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 and reduce inventory balances based on this analysis.</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Inventory relating to contracts in process and
work in process is valued at 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>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 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><p style="font: 10pt Times New Roman, Times, Serif; margin: 0">&#160;</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Contract Liabilities</p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Depreciation of plant and equipment is computed
on a straight-line basis over the estimated useful lives of the assets.&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Estimated useful lives of depreciable assets
are as follows:</p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 80%; border-collapse: collapse; margin-left: auto; margin-right: auto;">
  <tr style="vertical-align: top; background-color: rgb(204,238,255)">
    <td style="width: 50%; padding-bottom: 6pt">Buildings and improvements</td>
    <td style="width: 50%; padding-bottom: 6pt; text-align: center">10 &#8211; 50 years</td></tr>
  <tr style="vertical-align: top; ">
    <td style="padding-bottom: 6pt">Machinery and equipment</td>
    <td style="padding-bottom: 6pt; text-align: center">3 &#8211; 20 years</td></tr>
  <tr style="vertical-align: top; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 6pt">Furniture and fixtures</td>
    <td style="padding-bottom: 6pt; text-align: center">7 &#8211; 10 years</td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: center">&#160;</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The Company follows the provisions of Accounting
Standards Codification (&#8220;ASC&#8221;) Topic 740-10, "Accounting for Income Taxes."</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Under the provisions of ASC 740-10, deferred
tax assets and liabilities are recognized for the future tax consequences attributable to differences between the financial statement
carrying amounts of existing assets and liabilities and their respective tax bases.&#160; Deferred tax assets and liabilities are measured
using enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to be recovered
or settled.&#160; The effect on deferred taxes and liabilities of a change in tax rates is recognized in earnings in the period that includes
the enactment date.</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Cash and cash equivalents consist of cash
and money market funds. The Company considers all highly liquid investments with original maturities
of three months or less to be cash equivalents.&#160;</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The Company accounts for its investments in
debt securities in accordance with ASC 320-10-25, &#8220;Accounting for Certain Investments in Debt and Equity Securities.&#8221;&#160;
Investments in debt securities at June 30, 2023 consists of municipal bonds, and treasury bills, and at June 30, 2022, consisted of municipal
bonds.&#160; The Company classifies investments in debt securities as available-for-sale. Unrealized holding gains and losses, net of
related tax effect, on available-for-sale debt securities are excluded from earnings and are reported as a separate component of stockholders&#8217;
equity until realized.&#160; Realized gains and losses for debt securities classified as available-for-sale are included in earnings and
are determined using the specific identification method.&#160; Interest income is recognized when earned.&#160; Fair values are based
on quoted market prices available as of the balance sheet date, and are therefore considered a Level 1 valuation.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Certificates of deposit held for investment
with an original maturity greater than three months are carried at amortized cost and reported as short-term investments on the balance
sheets. The type of certificates of deposit that the Company invests in are not considered debt securities under Financial Accounting
Standards Board ("FASB") Accounting Standards Codification (&#8220;ASC&#8221;) 320, Investments - Debt Securities. </p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Fair Value of Financial Instruments</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">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.&#160; The standard describes three levels of inputs that may be used to measure fair value:</p><table border="0" cellpadding="0" cellspacing="0" style="width: 100%; margin-bottom: 6pt; font: 10pt Times New Roman, Times, Serif">
<tr style="vertical-align: top">
  <td style="text-align: justify; width: 0.5in"><span>&#9726;</span></td>
  <td style="text-align: justify">Level 1: Quoted prices (unadjusted) for identical assets or liabilities in active markets that the entity has the ability to access as
of the measurement date.</td></tr>
</table>


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




<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; margin-bottom: 6pt; font: 10pt Times New Roman, Times, Serif">
<tr style="vertical-align: top">
  <td style="text-align: justify; width: 0.5in"><span>&#9726;</span>&#160;</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="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The carrying amounts of financial instruments,
including cash and cash equivalents, short term investment securities, accounts receivable, accounts payable and accrued expenses, approximated
fair value as of June 30, 2023 and 2022 because of the immediate or short-term maturity of these financial instruments.&#160;</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; 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 doubtful accounts.&#160; The Company estimates the allowance based on its analysis of specific balances. Interest is not charged on
past due balances.&#160; Based on these factors, there was an allowance for doubtful accounts of $3,000 at June 30, 2023 and 2022.&#160;
Changes to the allowance for doubtful accounts are charged to expense and reduced by charge-offs, net of recoveries.</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">ASC 260-10 &#8220;Earnings Per Share
(EPS)&#8221; requires the Company to calculate net income per share based on basic and diluted net income per share, as defined.
Basic EPS excludes dilution and is computed by dividing net income by the weighted average number of shares outstanding for the
period. Diluted EPS reflects the potential dilution that could occur if securities or other contracts to issue common stock
were exercised or converted into common stock. The dilutive effect of outstanding options issued by the Company are reflected
in diluted EPS using the treasury stock method. Under the treasury stock method, options will only have a dilutive effect when
the average market price of common stock during the period exceeds the exercise price of the options.</p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Comprehensive income consists of net income and other
comprehensive income (loss).&#160; Other comprehensive income for fiscal years ended June 30, 2023 and 2022 consists of unrealized holding
gains (losses) on available-for-sale debt securities.&#160;</p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">The preparation of financial statements in conformity
with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that
affect the reported amount of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial
statements and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from those estimates.</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">&#160;</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Recently Adopted Accounting Standards</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">In December 2019, the FASB issued ASU 2019-12, &#8220;Income
Taxes (Topic 740): Simplifying the Accounting for Income Taxes.&#8221; ASU 2019-12 amends ASC 740 to simplify the accounting for income
taxes by removing certain exceptions for investments, intraperiod allocations and interim calculations, and adding guidance to reduce
complexity in the accounting standard under the FASB&#8217;s simplification initiative. ASU 2019-12 is effective for public entities for
fiscal years beginning after December 15, 2020. Upon adoption, the amendments in ASU 2019-12 should be applied on a prospective basis
to all periods presented. The Company adopted the new guidance under ASU 2019-12 in the first quarter of fiscal year 2022 and removed
the exception for intraperiod allocations from its interim period tax provision calculation, accordingly. The removal of the exception
for intraperiod allocations did not have a material impact on the Company.</p>

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



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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">In June 2016, the FASB issued ASU 2016-13, &#8220;Financial
Instruments-Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments&#8221;, <span>which
requires a financial asset measured at amortized cost basis to be presented at the net amount expected to be collected, with further clarifications
made more recently. For trade receivables, loans and other financial instruments, the Company will be required to use a forward-looking
expected loss model rather than the incurred loss model for recognizing credit losses which reflects losses that are probable. Credit
losses relating to available-for-sale debt securities are required to be recorded through an allowance for credit losses rather than as
a reduction in the amortized cost basis of the securities. </span>ASU 2016-13 is effective for public entities for fiscal years beginning
after December 15, 2022, including interim periods within those fiscal years. Upon adoption, the amendments in ASU 2016-13 should be applied
on a prospective basis to all periods presented relating to available-for-sale debt securities. For all other financial instruments the
Company upon adoption will apply the amendments on a modified-retrospective approach. The Company is expected to adopt the new guidance
under ASU 2016-13 in the first quarter of fiscal year 2024 and is currently evaluating the impact of the adoption on its financial statements.
The adoption of this standard is not expected to have a material impact on the Company&#8217;s financial statements.</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Impairment of Long-Lived Assets</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Long-lived assets, including property, plant, and
equipment, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not
be recoverable.&#160; Recoverability of assets to be held and used is measured by a comparison of the carrying amount of an asset to estimated
undiscounted future cash flows expected to be generated by the asset.&#160; If the carrying amount of an asset exceeds its estimated future
cash flows, an impairment charge is recognized by the amount by which the carrying amount of the asset exceeds the fair value of the asset.&#160;
There were no impairments of long-lived assets in fiscal years 2023 and 2022.&#160; Assets to be disposed of are separately presented
in the balance sheet and reported at the lower of the carrying amount or fair value less costs to sell, and no longer depreciated.&#160;
The assets and liabilities of a disposed group classified as held for sale are presented separately in the appropriate asset and liability
sections of the balance sheet, if applicable.</p>

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The market for our defense electronics products
is largely dependent on the availability of new contracts from the United States and foreign governments to prime contractors to which
we provide components.&#160; Any decline in expenditures by the United States or foreign governments may have an adverse effect on our
financial performance.&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Generally, U.S. Government contracts are subject
to procurement laws and regulations.&#160; Some of the Company&#8217;s contracts are governed by the Federal Acquisition Regulation (FAR),
which lays out uniform policies and procedures for acquiring goods and services by the U.S. Government, and agency-specific acquisition
regulations that implement or supplement the FAR.&#160; For example, the Department of Defense implements the FAR through the Defense
Federal Acquisition Regulation (DFAR).</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The FAR also contains guidelines and regulations
for managing a contract after award, including conditions under which contracts may be terminated, in whole or in part, at the government&#8217;s
convenience or for default.&#160; If a contract is terminated for the convenience of the government, a contractor is entitled to receive
payments for its allowable costs and, in general, the proportionate share of fees or earnings for the work done.&#160; If a contract is
terminated for default, the government generally pays for only the work it has accepted.&#160; These regulations also subject the Company
to financial audits and other reviews by the government of its costs, performance, accounting and general business practices relating
to its contracts, which may result in adjustment of the Company&#8217;s contract-related costs and fees.</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_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-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_SignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 all significant accounting policies of the reporting entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483426/235-10-50-1<br><br>Reference 2: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216641305376">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_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: 0; text-align: justify">Note 3. Revenue</p>

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 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: 0; text-align: justify; color: #1F497D">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Total revenue recognized for the twelve months ended
June 30, 2023 based on units delivered totaled $27,770,365 compared to $26,931,949 for the same periods in fiscal year 2022.&#160; Total
revenue recognized for the twelve months ended June 30, 2023 based on milestones achieved totaled $7,821,958 compared to $5,172,825 for
the same periods in fiscal year 2022.</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 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 result in the adjustment of the transaction price
as of June 30, 2023.&#160; Our payment terms are generally 30-60 days.&#160;</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Contract liabilities were $8,081,838 and $3,384,474
as of June 30, 2023 and 2022, respectively. &#160;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, approximated $2,018,642 for the twelve months ended June 30, 2023. 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: 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">The Company&#8217;s backlog at June 30, 2023 totaling
approximately $83.6 million is expected, based on expected due dates, to be recognized in the following fiscal years: 47% in 2024; 38%
in 2025, 11% in 2026 and 4% thereafter. &#160;&#160;</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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216638927152">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Investment Securities<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_InvestmentsDebtAndEquitySecuritiesAbstract', 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_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock', window );">Investment Securities</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Note 4. Investment Securities</p>

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

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

<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <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="font: 10pt Times New Roman, Times, Serif; white-space: nowrap; text-decoration: underline">June 30, 2023</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">11,280,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-6">&#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-7">&#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">11,280,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">$</td><td style="text-align: right">260,475</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">165</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">(7,843</td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">252,797</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">$</td><td style="border-bottom: Black 1pt solid; text-align: right">430,952</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">1,225</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">(301</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">$</td><td style="border-bottom: Black 1pt solid; text-align: right">431,876</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">11,971,427</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">1,390</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(8,144</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">11,964,673</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: 0 0 6pt; text-indent: 0.25in"><span style="text-underline-style: double">&#160;</span></p><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <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="font: 10pt Times New Roman, Times, Serif; text-decoration: underline; white-space: nowrap">June 30, 2022</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">3,639,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-8">&#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-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">3,639,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; padding-bottom: 1pt">Municipal bonds</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">72,225</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"><div style="-sec-ix-hidden: hidden-fact-10">&#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">$</td><td style="border-bottom: Black 1pt solid; text-align: right">(2,446</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">$</td><td style="border-bottom: Black 1pt solid; text-align: right">69,779</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total investment securities</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">3,711,225</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"><div style="-sec-ix-hidden: hidden-fact-11">&#8212;</div></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">(2,446</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">3,708,779</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: 0 0 6pt; text-indent: 0.25in"><span style="text-underline-style: double">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The portfolio is diversified and highly liquid
and primarily consists of investment grade fixed income instruments. At June 30, 2023, 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: 0 0 6pt; text-align: justify">As of June 30, 2023 and June 30, 2022, the remaining
contractual maturities of available-for-sale debt securities were as follows:</p>

<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">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: center">&#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="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">One Year</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">Five Years</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">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">June 30, 2023</td><td>&#160;</td>
    <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">11,711,876</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">252,797</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">11,964,673</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, 2022</td><td>&#160;</td>
    <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">3,639,000</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">69,779</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">3,708,779</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_InvestmentsDebtAndEquitySecuritiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_InvestmentsDebtAndEquitySecuritiesAbstract</td>
</tr>
<tr>
<td style="padding-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_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 investments in certain debt and equity 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 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/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482106/820-10-50-6B<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6B<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482106/820-10-50-6B<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Regulation S-K (SK)<br> -Number 229<br> -Section 1403<br> -Paragraph (b)<br> -Publisher SEC<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//946-320/tableOfContent<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 940<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//940-320/tableOfContent<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//942-320/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_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216644698864">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Contracts in Process<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_ContractorsAbstract', window );"><strong>Contracts in Process [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_LongTermContractsOrProgramsDisclosureTextBlock', window );">Contracts in Process</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Note 5. Contracts in Process</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 0 0.75in; text-align: justify; text-indent: -0.75in">Contracts in process
at June 30, 2023 and 2022 are as follows:</p>

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

<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <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">2023</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">2022</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%; text-align: left">Unrecognized gross contract value</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">83,577,153</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">76,782,028</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left">Costs related to contracts in process</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">17,318,579</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">16,207,419</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 12pt; text-align: justify">Included in costs relating to contracts in
process at June 30, 2023 and 2022 are costs relative to contracts that may not be completed within the ensuing year as contracts vary
in size, scope and duration. Under the units-of-delivery method, the related sale and cost of sales will not be reflected in the statements
of comprehensive income until the units under contract are shipped.</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_ContractorsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ContractorsAbstract</td>
</tr>
<tr>
<td style="padding-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_LongTermContractsOrProgramsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-term contracts or programs.</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> -SubTopic 35<br> -Topic 605<br> -Publisher FASB<br> -URI https://asc.fasb.org//605-35/tableOfContent<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(3)(c)(3))<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 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(d)(ii))<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 912<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//912/tableOfContent<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 912<br> -SubTopic 275<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482094/912-275-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 912<br> -SubTopic 275<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482094/912-275-50-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 912<br> -SubTopic 275<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482094/912-275-50-4<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 912<br> -SubTopic 275<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482094/912-275-50-5<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 912<br> -SubTopic 275<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482094/912-275-50-6<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 912<br> -SubTopic 310<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482283/912-310-50-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 912<br> -SubTopic 310<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482283/912-310-50-4<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 912<br> -SubTopic 405<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482379/912-405-45-4<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 912<br> -SubTopic 405<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482363/912-405-50-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 912<br> -SubTopic 405<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482363/912-405-50-3<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 910<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482332/910-20-50-1<br><br>Reference 16: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 910<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482546/910-10-50-4<br><br>Reference 17: 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(3)(c)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 18: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 910<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482546/910-10-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_LongTermContractsOrProgramsDisclosureTextBlock</td>
</tr>
<tr>
<td style="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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216733342832">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property, Plant and Equipment<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentDisclosureTextBlock', window );">Property, Plant and Equipment</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Note 6. Property, Plant and Equipment</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Property, plant and equipment at June 30, 2023
and 2022 is as follows:</p>

<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 90%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <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">2023</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">2022</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%">Land</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">45,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: 10%; text-align: right">45,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">Building and improvements</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4,811,179</td><td 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,450,399</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">Machinery and equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">11,402,679</td><td 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,287,648</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">Furniture and fixtures</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">164,200</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">164,200</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">16,423,058</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">15,947,247</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">Accumulated depreciation</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">(13,597,969</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">(13,149,254</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="text-align: left; padding-bottom: 2.5pt">Property, plant and equipment, net</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">2,825,089</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">2,797,993</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: 0; text-align: justify">&#160;</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Depreciation expense was $484,920 and $494,635
for the years ended June 30, 2023 and 2022, respectively.</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 will be conducted on Espey&#8217;s property in Saratoga Springs, NY, with completion slated for
2024. 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 expects to have an initial cash outlay to satisfy
income tax obligations arising from the value of the award. Included in building and improvements at June 30, 2023 and 2022 was
$308,001 and $58,296 respectively, for facility and capital upgrades under the funding award. As of September 19, 2023, the first milestone totaling approximately $969,000 was achieved and reimbursed. The Company expects to record
the receipt of milestones payments received as a reduction from the cost of the assets.</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_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-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_PropertyPlantAndEquipmentDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</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 360<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//360/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480321/958-360-50-6<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480321/958-360-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480321/958-360-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_PropertyPlantAndEquipmentDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216814585472">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Pension Expense<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_CompensationAndRetirementDisclosureAbstract', window );"><strong>Pension Expense [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_PensionExpenseTextBlock', window );">Pension Expense</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Note 7. Pension Expense</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Under terms of a negotiated union contract
which expires on June 30, 2025, the Company is obligated to make contributions to a union-sponsored International Brotherhood of
Electrical Workers Local 1799 defined benefit pension plan (Plan identifying number is 14-6065199) covering eligible employees. Such
contributions and expenses are based upon hours worked at a specified rate and amounted to $102,612 in fiscal year 2023 and $110,378
in fiscal year 2022. These contributions represent more than five percent of the total contributions made into the Plan. For the
years beginning January 1, 2023 and 2022, the Plan was in the &#8220;green zone&#8221; which means it is neither endangered nor
critical status. In addition, the Company is obligated to make contributions to the National Electrical Benefit Fund (NEBF) (Plan
identifying number is 53-0181657). The Plan is a defined pension benefit plan covering eligible union employees. Such
contributions and expenses amounted to $72,350 in fiscal year 2023 and $73,771 in
fiscal year 2022. The contribution did not and will not in the future have a material impact on the Company&#8217;s financial
statements.</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">The Company sponsors a 401(k) plan for non-union
workers with employee and employer matching contributions. The employer match is 10% of the employee contribution and was $53,768 and
$53,836, for fiscal years 2023 and 2022, 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_PensionExpenseTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 pension expense.</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_PensionExpenseTextBlock</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_CompensationAndRetirementDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CompensationAndRetirementDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216644728880">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Provision for Income Taxes<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_IncomeTaxDisclosureAbstract', window );"><strong>Provision for Income Taxes [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_IncomeTaxDisclosureTextBlock', window );">Provision for Income Taxes</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Note 8. Provision for Income Taxes</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">A summary of the components of the provision for income
taxes for the years ended June 30, 2023 and 2022 is as follows:</p>

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

<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <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">2023</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">2022</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%; text-align: left">Current tax expense - federal</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">1,059,743</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">313,705</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left">Current tax expense - state</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">9,595</td><td 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,978</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">Deferred tax (benefit) expense</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">(40,002</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">9,271</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; padding-left: 0.5in">Provision for income taxes</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">1,029,336</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">327,954</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; text-align: justify; text-indent: 0pt">&#160;</p>

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Deferred income taxes reflect the impact of
"temporary differences" between the amount of assets and liabilities for financial reporting purposes and such amounts measured
by tax laws and regulations. These "temporary differences" are determined in accordance with ASC 740-10.</p><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">&#160;</p><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">The combined U.S. federal and state effective
income tax rates of 21.9% and 20.6%, for 2023 and 2022 respectively, differed from the statutory U.S. federal income tax rate for the
following reasons:</p>

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

<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 90%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <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">2023</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">2022</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%; text-align: left">U.S. federal statutory income tax rate</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right">21.0</td><td style="white-space: nowrap; width: 1%; text-align: left">%</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right">21.0</td><td style="white-space: nowrap; width: 1%; text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 0pt; text-align: left">Increase (reduction) in rate resulting from:</td><td>&#160;</td>
    <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">State franchise tax, net of federal income tax benefit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.2</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.3</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">ESOP cost versus Fair Market Value</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(0.2</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.3</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">Dividend on allocated ESOP shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</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">&#160;</td><td style="text-align: right">(3.1</td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt; text-align: left">Stock-based compensation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1.0</td><td 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.0</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">Rate Differential on Net Operating Loss Carryback</td><td>&#160;</td>
    <td style="text-align: left">&#160;</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">&#160;</td><td style="text-align: right">(0.1</td><td style="white-space: nowrap; text-align: left">)</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">(0.1</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">(0.2</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="text-align: left; padding-bottom: 2.5pt">Effective tax rate</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">21.9</td><td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 1.5pt; text-align: left">%</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">20.6</td><td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 1.5pt; text-align: left">%</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">For the years ended June 30, 2023 and 2022
deferred income tax (benefit) expense of ($40,002) and $9,271, respectively, results from the changes in temporary differences for
each year. The tax effects of temporary differences that give rise to deferred tax assets and deferred tax liabilities as of June
30, 2023 and 2022 are presented as follows:</p>

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

<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 90%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <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">2023</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">2022</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">Deferred tax assets:</td><td>&#160;</td>
    <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; width: 74%; text-align: left">Accrued expenses</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">273,059</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">204,774</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">ESOP</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">24,407</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">14,237</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; text-align: left">Stock-based compensation</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">36,552</td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">33,719</td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 40pt; text-align: left; padding-bottom: 1pt">Total deferred tax assets</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">334,018</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">252,730</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">&#160;</td><td>&#160;</td>
    <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">Deferred tax liability:</td><td>&#160;</td>
    <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">Property, plant and equipment - principally due to differences in depreciation methods</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">337,501</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">374,566</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">Inventory - effect of uniform capitalization</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">99,215</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">19,276</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt; text-align: left; padding-bottom: 1pt">Prepaid expenses</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">35,129</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">36,716</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-bottom: 1pt; padding-left: 40pt; text-align: left">Total deferred tax liability</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">471,845</td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">430,558</td><td style="padding-bottom: 1pt; 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; padding-bottom: 2.5pt">Net deferred tax liability</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">(137,827</td><td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 2pt; 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">(177,828</td><td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 2pt; text-align: left">)</td></tr>
  </table>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">In assessing the realization of deferred tax
assets, management considers whether it is more likely than not that some portion or all of the deferred tax assets will be realized.
The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income during the periods in which
those temporary differences become deductible. Management considers the scheduled reversal of deferred tax liabilities, projected future
taxable income, and tax planning strategies in making this assessment. Based upon the level of historical taxable income and projection
for future taxable income over the period in which the deferred tax assets are deductible, management believes it is more likely than
not that the Company will realize the benefits of these temporary differences without consideration of a valuation allowance.</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">As the result of the implementation of the FASB
interpretation No. 48 (&#8220;FIN 48&#8221;), Accounting for Uncertainty in Income Taxes &#8211; An Interpretation of FASB Statement No.
109, the Company recognized no material adjustments to unrecognized tax benefits. As of June 30, 2023 and 2022, the Company has no unrecognized
tax benefits.</p><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">&#160;</p><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">The Company recognizes interest and penalties
in general and administrative expense. As of June 30, 2023 and 2022, the Company has not recorded any provision for accrued interest and
penalties.</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">The Company is subject to taxation in the United
States and various state jurisdictions. The federal tax returns are subject to audit for three years from date of filing unless the return
was audited within that period. In general the majority of state statutes follow similar guidelines. As such, the Company&#8217;s tax
returns for tax years ending June 30, 2023, 2022, and 2021 remain open to examination by the respective taxing authorities.</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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_IncomeTaxDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.</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 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-13<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//740/tableOfContent<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-14<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-21<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 270<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482526/740-270-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-17<br><br>Reference 8: 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.5.Q1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 11.C)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482603/740-30-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_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216645006928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Significant Customers<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_esp_SignificantCustomersAbstract', window );"><strong>Significant Customers [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_SignificantCustomersTextBlock', window );">Significant Customers</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0pt">Note 9. Significant
Customers</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">A significant portion of the
Company's business is the production of military and industrial electronic equipment for use by the U.S. and foreign governments and
certain industrial customers. Sales to five domestic customers accounted for 81% of total sales in 2023. Sales to four domestic
customers accounted for 57% of total sales in 2022. The related accounts receivable balance, as a percentage of the Company's total
trade accounts receivable balance, was 81% represented by five customers at June 30, 2023 and 74% represented by four customers at
June 30, 2022.</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Export sales in fiscal years
2023 and 2022 were approximately $549,510 and $1,644,000, 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_SignificantCustomersAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_SignificantCustomersAbstract</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_SignificantCustomersTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 disclosure for revenues in the period from one or more significant customers.</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_SignificantCustomersTextBlock</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>
</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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216644895728">
<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">12 Months Ended</th>
</tr>
<tr><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_esp_EmployeeStockOwnershipPlanAbstract', 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; text-align: justify; text-indent: 0pt">Note 10. Employee
Stock Ownership Plan</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 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 statement of financial position. 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. The ESOP borrowed from the Corporation an amount equal to the purchase
price.&#160; The loan will be repaid in fifteen (15) equal annual installments of principal commencing June 2021.&#160; The Board of
Directors has fixed the interest rate and the unpaid balance will bear interest at a fixed rate of 3.00% per annum. ESOP compensation
expense was $365,646 and $325,067 for the years ended June 30, 2023 and 2022, respectively.</p>

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



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

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

<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <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">2023</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">2022</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%; text-indent: 0in">Allocated shares</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right">484,958</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: 10%; text-align: right">496,091</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-bottom: 1pt">Unreleased shares</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">233,645</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">256,293</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total 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">718,603</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">752,384</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 10pt; 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">3,913,554</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,649,612</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: 0; text-align: justify">&#160;</p>

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">The Company may at times be required to repurchase
shares at the ESOP participants&#8217; request at the fair market value. During the twelve months ended June 30, 2023 and 2022, the Company
did not repurchase shares previously held by the ESOP.</p><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 twelve months ended June 30, 2023 and 2022 totaled 33,780 shares and 14,265 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_EmployeeStockOwnershipPlanAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_EmployeeStockOwnershipPlanAbstract</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_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>
</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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216644921664">
<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">12 Months Ended</th>
</tr>
<tr><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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-Based Payment Arrangement [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; text-indent: 0pt">Note 11. Stock-based Compensation</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">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. Included as a reduction to the cost recognized for share-based payments is an estimate for option
forfeitures. It is the Company&#8217;s policy to estimate expected option forfeitures based on historical experience. Actual forfeitures
are adjusted prior to the vesting date if the impact is material.</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Total stock-based compensation expense recognized
in the statements of comprehensive income for the fiscal years ended June 30, 2023 and 2022, was $227,132 and $176,696, respectively,
before income taxes. The amount of this stock-based compensation expense related to non-qualified stock options (&#8220;NQSO&#8221;) for
the fiscal years ended June 30, 2023 and 2022, was $21,432 and $29,287, respectively. The deferred tax benefit related to the NQSO&#8217;s
as of June 30, 2023 and 2022 was approximately $4,501 and $6,150, respectively. The remaining stock option expense, in each year, related
to incentive stock options (&#8220;ISO&#8221;) which are not deductible by the corporation when exercised, assuming a qualifying disposition
and as such no deferred tax benefit was established related to these amounts.</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">As of June 30, 2023, there was approximately $155,154
of unrecognized compensation cost related to stock option awards that is expected to be recognized as expense over the next 2 years, of
which $128,766 relates to ISO&#8217;s and $26,388 relates to NQSO&#8217;s. The total deferred tax benefit related the NQSO&#8217;s in
future years will be $5,541.</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"), approved by the Company's shareholders at the Company's Annual Meeting on December 1, 2017. 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 June 30, 2023, options covering 382,104 shares have been granted, of which
245,831 are outstanding, and 136,273 shares have been cancelled. As of June 30, 2023, option covering 154,169 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 June 30, 2023, 50,500 options were
outstanding under such plan of which all are vested and exercisable.</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 volatility, expected life, and interest rates.</p><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">&#160;</p><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 year ended June 30, 2023 and 2022.</p>

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

<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap; text-align: justify">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">2023</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">2022</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 78%; text-align: left; text-indent: 0in">Dividend yield</td><td style="width: 1%">&#160;</td>
    <td style="width: 10%; text-align: right">0.03%</td><td style="width: 1%">&#160;</td>
    <td style="width: 10%; text-align: right"><div style="-sec-ix-hidden: hidden-fact-14">&#8212;</div></td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left">Expected stock price volatility</td><td>&#160;</td>
    <td style="text-align: right">27.20%</td><td>&#160;</td>
    <td style="text-align: right">25.60%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Risk-free interest rate</td><td>&#160;</td>
    <td style="text-align: right">2.71%</td><td>&#160;</td>
    <td style="text-align: right">0.99%</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left">Expected option life (in years)</td><td>&#160;</td>
    <td style="text-align: right">5.4yrs</td><td>&#160;</td>
    <td style="text-align: right">5.4yrs</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-indent: -10pt">Weighted average fair value per share of options granted during the period</td><td>&#160;</td>
    <td style="text-align: right">$4.18</td><td>&#160;</td>
    <td style="text-align: right">$3.74</td></tr>
  </table>


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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Effective March 13, 2023, the Company reinstated
payment of a quarterly dividend. The Company paid regular cash dividends on common stock of $0.20 per share for the fiscal year
ended June 30, 2023 and paid no cash dividends for the fiscal year ended June 30, 2022. 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: 0; text-align: justify">&#160;</p>

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

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

<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="15" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">Employee Stock Options Plan</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 style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">&#160;</td><td style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Weighted</td><td style="text-align: center">&#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 style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Weighted</td><td style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Average</td><td style="text-align: center">&#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 style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Average</td><td style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Remaining</td><td style="text-align: center">&#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 style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Exercise</td><td style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Contractual</td><td style="text-align: center">&#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>&#160;</td>
    <td colspan="3" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">to Option</td><td style="text-align: center; border-bottom: Black 1pt solid">&#160;</td>
    <td colspan="3" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">Price</td><td style="text-align: center; border-bottom: Black 1pt solid">&#160;</td>
    <td colspan="3" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">Term</td><td style="text-align: center; border-bottom: Black 1pt solid">&#160;</td>
    <td colspan="3" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">Value</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 49%">Balance at July 1, 2022</td><td style="width: 3%">&#160;</td>
    <td style="width: 3%; text-align: left">&#160;</td><td style="width: 5%; text-align: right">246,273</td><td style="white-space: nowrap; width: 3%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 3%; text-align: right">$</td><td style="width: 5%; text-align: right">20.89</td><td style="white-space: nowrap; width: 3%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 3%; text-align: left">&#160;</td><td style="width: 5%; text-align: right">6.73</td><td style="white-space: nowrap; width: 3%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 3%; text-align: right">&#160;</td><td style="width: 5%; text-align: right">&#160;</td><td style="white-space: nowrap; width: 4%; 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">74,200</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: right">$</td><td style="text-align: right">13.81</td><td 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.12</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: right">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Exercised</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-15">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: right">&#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"><div style="-sec-ix-hidden: hidden-fact-17">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: right">&#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>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(24,142</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: right">$</td><td style="border-bottom: Black 1pt solid; text-align: right">20.46</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-18">&#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: right">&#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 June 30, 2023</td><td>&#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">296,331</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: right">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">19.15</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.49</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: right">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">338,243</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 June 30, 2023</td><td>&#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">283,745</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: right">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">19.40</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.38</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: right">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">298,723</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 June 30, 2023</td><td>&#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">163,731</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: right">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">23.13</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">4.74</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: right">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">0</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td></tr>
  </table>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 June 30, 2023 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 June 30, 2023. This amount changes based
on the fair market value of the Company&#8217;s common stock. The total intrinsic values of the options exercised during the twelve months
ended June 30, 2023 and 2022 was $0.</p><p style="font: 10pt Times New Roman, Times, Serif; text-indent: 0pt; margin: 0pt; text-align: justify">&#160;</p><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt">The following table summarizes changes in non-vested stock options
during the twelve months ended June 30, 2023:</p>

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

<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">&#160;</td><td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Weighted</td><td style="text-align: center; vertical-align: bottom">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Number of</td><td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Average</td><td style="text-align: center; vertical-align: bottom">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Shares</td><td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Grant Date</td><td style="text-align: center; vertical-align: bottom">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Subject</td><td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Fair Value</td><td style="text-align: center; vertical-align: bottom">&#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="vertical-align: bottom; white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">to Option</td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">(per Option)</td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%">Non-Vested at July 1, 2022</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right">104,175</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">2.92</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">74,200</td><td 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.18</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">(34,075</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.59</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="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">(11,700</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">2.75</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-bottom: 2.5pt">Non-Vested at June 30, 2023</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">132,600</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.98</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_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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216645006928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Concentration of Credit Risk<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_RisksAndUncertaintiesAbstract', window );"><strong>Concentration of Credit Risk [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_ConcentrationRiskDisclosureTextBlock', window );">Concentration of Credit Risk</a></td>
<td class="text"><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt">Note 12. Concentration of Credit Risk</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Financial instruments that potentially subject the
Company to concentrations of credit risk consist principally of cash and cash equivalents, short-term investments and accounts receivable.
The Company maintains cash and cash equivalents with various financial institutions. At times such investments may be in excess of FDIC
insurance limits. As disclosed in Note 9, a significant portion of the Company's business is the production of military and industrial
electronic equipment for use by the U.S. and foreign governments and certain industrial customers. The related accounts receivable balance,
as a percentage of the Company's total trade accounts receivable balance, was 81% represented by five customers at June 30, 2023 and 74%
represented by four customers at June 30, 2022.</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Although the Company's exposure to credit risk
associated with nonpayment of these concentrated balances is affected by the conditions or occurrences within the U.S. and foreign governments,
the Company believes that its trade accounts receivable credit risk exposure is limited. The Company performs ongoing credit evaluations
of its customer's financial conditions and requires collateral, such as progress payments, in certain circumstances. The Company establishes
an allowance for doubtful accounts based upon factors surrounding the credit risk of specific customers, historical trends and other information.</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_ConcentrationRiskDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 any concentrations existing at the date of the financial statements that make an entity vulnerable to a reasonably possible, near-term, severe impact. This disclosure informs financial statement users about the general nature of the risk associated with the concentration, and may indicate the percentage of concentration risk as of the balance sheet date.</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 275<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//275/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_ConcentrationRiskDisclosureTextBlock</td>
</tr>
<tr>
<td style="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_RisksAndUncertaintiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RisksAndUncertaintiesAbstract</td>
</tr>
<tr>
<td style="padding-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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216733150432">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Related Parties<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_RelatedPartyTransactionsAbstract', window );"><strong>Related Parties [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_RelatedPartyTransactionsDisclosureTextBlock', window );">Related Parties</a></td>
<td class="text"><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Note 13. Related Parties</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">The administration of the
shares of common stock held by the ESOP Trust is subject to the Espey Mfg. &amp; Electronics Corp. Employee Retirement Plan and
Trust (ESOP) and a Trust Agreement, each effective as of July 1, 2016. The Trustees&#8217; rights with respect to the disposition of
shares are governed by the terms of the Plan and the Trust Agreement. As to shares that have been allocated to the accounts of
participants in the ESOP Trust, the Plan provides that the Trustees are required to vote such shares in accordance with instructions
received from the participants. As to unallocated shares and allocated shares for which voting instructions have not been received
from participants, the Plan provides that the Trustees are required to vote such shares in accordance with the direction of the
Board of Directors of the Company under the terms of the Plan and Trust Agreement, which is
currently in the same proportion as the instructions received on the allocated shares. See Note 10 for additional information
regarding the ESOP.</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_RelatedPartyTransactionsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RelatedPartyTransactionsAbstract</td>
</tr>
<tr>
<td style="padding-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_RelatedPartyTransactionsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates.</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 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-6<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481062/946-235-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481062/946-235-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483326/850-10-50-1<br><br>Reference 7: 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(2)(g)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 8: 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(2)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<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 1<br> -Subparagraph (SX 210.6-07(2)(e))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//850/tableOfContent<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483326/850-10-50-6<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<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/2147483326/850-10-50-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<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/2147483326/850-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_RelatedPartyTransactionsDisclosureTextBlock</td>
</tr>
<tr>
<td style="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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216641440672">
<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">12 Months Ended</th>
</tr>
<tr><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>
</tr>
<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; text-align: justify; text-indent: 0pt">Note 14. Commitments
and Contingencies</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">The Company at certain times
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
June 30, 2023 and 2022. 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="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">&#160;</p><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">We are party to various litigation matters and claims
arising from time to time in the ordinary course of business. While the results of such matters cannot be predicted with certainty,
we believe that the final outcome of such matters will not have a material adverse effect on our business, financial condition, results
of operations or cash flows. Currently, there are no matters pending.</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/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 2: 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 3: 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/2147480327/954-440-50-1<br><br>Reference 4: 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 5: 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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216733342832">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_StockholdersEquityNoteAbstract', window );"><strong>Stockholders' Equity Note [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_StockholdersEquityNoteDisclosureTextBlock', window );">Stockholders' Equity</a></td>
<td class="text"><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Note 15. Stockholders' Equity</p>

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

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

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">The Company has reserved common shares for future
issuance as follows as of June 30, 2023:</p>

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

<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 80%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 87%; text-align: left">Stock options outstanding</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right">296,331</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-bottom: 1pt">Stock options available for issuance</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">154,169</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-bottom: 2.5pt">Number of common shares reserved</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">450,500</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; text-indent: 0pt; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-indent: 0pt; 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 years ended
June 30:</p>

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

<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <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">2023</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">2022</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">Numerator:</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: 74%; 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: 10%; border-bottom: Black 2.5pt double; text-align: right">3,677,131</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: 10%; border-bottom: Black 2.5pt double; text-align: right">1,265,127</td><td style="white-space: nowrap; width: 1%; 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>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 style="font-family: Courier New, Courier, Monospace">&#160;</td>
    <td style="font-family: Courier New, Courier, Monospace; text-align: left">&#160;</td><td style="font-family: Courier New, Courier, Monospace; text-align: right">&#160;</td><td style="white-space: nowrap; font-family: Courier New, Courier, Monospace; text-align: left">&#160;</td><td style="font-family: Courier New, Courier, Monospace">&#160;</td>
    <td style="font-family: Courier New, Courier, Monospace; text-align: left">&#160;</td><td style="font-family: Courier New, Courier, Monospace; text-align: right">&#160;</td><td style="white-space: nowrap; font-family: Courier New, Courier, Monospace; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 30pt; text-align: left">Common shares outstanding, beginning of period</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><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="text-indent: -10pt; padding-left: 30pt; text-align: left">Common shares issued to ESOP during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-19">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-20">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 30pt">Unearned ESOP shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(256,293</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">(279,429</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-indent: -10pt; padding-left: 30pt">Weighted average common shares issued during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-21">&#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"><div style="-sec-ix-hidden: hidden-fact-22">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 30pt">Weighted average common shares purchased during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-23">&#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"><div style="-sec-ix-hidden: hidden-fact-24">&#8212;</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="text-indent: -10pt; padding-left: 30pt; padding-bottom: 1pt">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">8,516</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">8,700</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 30pt; padding-bottom: 2.5pt">Denominator for basic earnings per common shares &#8211; 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,454,856</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,431,904</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-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="text-indent: -10pt; padding-left: 30pt">Common shares outstanding, beginning of period</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><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="text-indent: -10pt; padding-left: 30pt; text-align: left">Common shares issued to ESOP during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-25">&#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"><div style="-sec-ix-hidden: hidden-fact-26">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 30pt">Unearned ESOP shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(256,293</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">(279,429</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-indent: -10pt; padding-left: 30pt">Weighted average common shares issued during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-27">&#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"><div style="-sec-ix-hidden: hidden-fact-28">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 30pt">Weighted average common shares purchased during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-29">&#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"><div style="-sec-ix-hidden: hidden-fact-30">&#8212;</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="text-indent: -10pt; padding-left: 30pt">Weighted average ESOP shares earned during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">8,516</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">8,700</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 30pt; padding-bottom: 1pt">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">16,160</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-31">&#8212;</div></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-indent: -10pt; padding-left: 30pt; padding-bottom: 2.5pt">Denominator for diluted earnings per common shares &#8211; 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,471,016</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,431,904</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: 0; text-align: justify">&#160;</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-indent: 0pt; text-align: justify">Not included in this computation of earnings
per share for the year ended June 30, 2023 and 2022 were options to purchase 130,656 and 246,273 shares, respectively, of the Company&#8217;s
common stock. These options were excluded because their inclusion would have been anti-dilutive due to the average strike price exceeding
the average market price of those shares.</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-indent: 0pt; text-align: justify">Effective March 13, 2023, the
Company reinstated payment of a quarterly dividend. The Company paid regular cash dividends on common stock of $0.20 per share for the
fiscal year ended June 30, 2023 and paid <span style="-sec-ix-hidden: hidden-fact-32">no</span> cash dividends for the fiscal year ended June 30, 2022. Our Board of Directors assesses the
Company&#8217;s dividend policy periodically. There is no assurance that the Board of Directors will maintain the amount of the regular
cash dividend during any future years.</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_StockholdersEquityNoteAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StockholdersEquityNoteAbstract</td>
</tr>
<tr>
<td style="padding-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_StockholdersEquityNoteDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-13<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-13<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-14<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481062/946-235-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481062/946-235-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481004/946-505-50-6<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480237/815-40-50-6<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<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 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(e)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//505/tableOfContent<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-13<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-13<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-13<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-14<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-14<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 16<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-16<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-18<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-18<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityNoteDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216644693024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Line of Credit<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_DebtDisclosureAbstract', window );"><strong>Line of Credit [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_DebtDisclosureTextBlock', window );">Line of Credit</a></td>
<td class="text"><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Note 16. Line of Credit</p>

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

<p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">At June 30, 2023, the Company has an uncommitted
and unused Line of Credit with a financial institution. The agreement provides that the Company may borrow up to $3,000,000. The line
provides for interest payments equal to the BSBY Daily Floating Rate plus 2 percentage points. Any borrowing under the line of credit
will be collateralized by accounts receivable. All outstanding balances are payable no later than the expiration date of the agreement,
unless other terms are agreed to by the lender. The existing line of credit expires February 28, 2024. The Company did not borrow any
funds during the last two fiscal years.</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_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_DebtDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.</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 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 470<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//470/tableOfContent<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1C<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1C<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1C<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1I<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1I<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1I<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216644682192">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Quarterly Financial Information (Unaudited)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_QuarterlyFinancialInformationDisclosureAbstract', window );"><strong>Quarterly Financial Information (Unaudited) [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_QuarterlyFinancialInformationTextBlock', window );">Quarterly Financial Information (Unaudited)</a></td>
<td class="text"><p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">Note 17. Quarterly Financial Information (Unaudited)</p>

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

<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 90%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap; text-align: justify">&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">First</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Second</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Third</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Fourth</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap; font-weight: bold">2023</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Quarter</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">Quarter</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">Quarter</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">Quarter</td><td style="padding-bottom: 1pt">&#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">8,635,795</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">8,804,109</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">9,809,616</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">8,342,803</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">Gross profit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,812,142</td><td 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,260,722</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,973,429</td><td 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,004,245</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 income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">768,266</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,146,042</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">867,288</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">895,535</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <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; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Basic</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.31</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.47</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.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">0.37</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 10pt">Diluted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.31</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.47</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.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">0.36</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="white-space: nowrap; font-weight: bold">2022</td><td>&#160;</td>
    <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">Net sales</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">7,545,432</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">7,458,050</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">8,620,049</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">8,481,243</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">Gross profit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,353,098</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,206,817</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,734,880</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,177,363</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 income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">306,061</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">21,201</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">661,359</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">276,506</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <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; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Basic</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.13</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.01</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.27</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.11</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 10pt">Diluted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.13</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.01</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.27</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.11</td><td style="white-space: nowrap; 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_QuarterlyFinancialInformationDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_QuarterlyFinancialInformationDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_QuarterlyFinancialInformationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 quarterly financial data. Includes, but is not limited to, tabular presentation of financial information for fiscal quarters, effect of year-end adjustments, and an explanation of matters or transactions that affect comparability of the information.</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 1B<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482964/270-10-50-1B<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 270<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//270/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_QuarterlyFinancialInformationTextBlock</td>
</tr>
<tr>
<td style="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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216635871232">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounting Policies, by Policy (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_AccountingPoliciesAbstract', window );"><strong>Summary of Significant Accounting Policies [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_RevenueRecognitionPolicyTextBlock', window );">Revenue</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Revenue</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">The majority of our sales are generated from military
contracts from defense companies, the 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><p style="font: 10pt Times New Roman, Times, Serif; margin: 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><p style="font: 10pt Times New Roman, Times, Serif; margin: 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><p style="font: 10pt Times New Roman, Times, Serif; margin: 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><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryPolicyTextBlock', window );">Inventory</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Inventory</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 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 and reduce inventory balances based on this analysis.</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Inventory relating to contracts in process and
work in process is valued at 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><p style="font: 10pt Times New Roman, Times, Serif; margin: 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><p style="font: 10pt Times New Roman, Times, Serif; margin: 0">&#160;</p><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_ContractLiabilitiesPolicyTextBlock', window );">Contract Liabilities</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Contract Liabilities</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Contract liabilities include advance payments and
billings in excess of revenue recognized.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock', window );">Depreciation</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Depreciation</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Depreciation of plant and equipment is computed
on a straight-line basis over the estimated useful lives of the assets.&#160;</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Estimated useful lives of depreciable assets
are as follows:</p><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 80%; border-collapse: collapse; margin-left: auto; margin-right: auto;">
  <tr style="vertical-align: top; background-color: rgb(204,238,255)">
    <td style="width: 50%; padding-bottom: 6pt">Buildings and improvements</td>
    <td style="width: 50%; padding-bottom: 6pt; text-align: center">10 &#8211; 50 years</td></tr>
  <tr style="vertical-align: top; ">
    <td style="padding-bottom: 6pt">Machinery and equipment</td>
    <td style="padding-bottom: 6pt; text-align: center">3 &#8211; 20 years</td></tr>
  <tr style="vertical-align: top; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 6pt">Furniture and fixtures</td>
    <td style="padding-bottom: 6pt; text-align: center">7 &#8211; 10 years</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_IncomeTaxPolicyTextBlock', window );">Income Taxes</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Income Taxes</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The Company follows the provisions of Accounting
Standards Codification (&#8220;ASC&#8221;) Topic 740-10, "Accounting for Income Taxes."</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Under the provisions of ASC 740-10, deferred
tax assets and liabilities are recognized for the future tax consequences attributable to differences between the financial statement
carrying amounts of existing assets and liabilities and their respective tax bases.&#160; Deferred tax assets and liabilities are measured
using enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to be recovered
or settled.&#160; The effect on deferred taxes and liabilities of a change in tax rates is recognized in earnings in the period that includes
the enactment date.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsPolicyTextBlock', window );">Cash and Cash Equivalents</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Cash and Cash Equivalents</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Cash and cash equivalents consist of cash
and money market funds. The Company considers all highly liquid investments with original maturities
of three months or less to be cash equivalents.&#160;</p><span></span>
</td>
</tr>
<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_InvestmentPolicyTextBlock', window );">Investment Securities</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Investment Securities</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The Company accounts for its investments in
debt securities in accordance with ASC 320-10-25, &#8220;Accounting for Certain Investments in Debt and Equity Securities.&#8221;&#160;
Investments in debt securities at June 30, 2023 consists of municipal bonds, and treasury bills, and at June 30, 2022, consisted of municipal
bonds.&#160; The Company classifies investments in debt securities as available-for-sale. Unrealized holding gains and losses, net of
related tax effect, on available-for-sale debt securities are excluded from earnings and are reported as a separate component of stockholders&#8217;
equity until realized.&#160; Realized gains and losses for debt securities classified as available-for-sale are included in earnings and
are determined using the specific identification method.&#160; Interest income is recognized when earned.&#160; Fair values are based
on quoted market prices available as of the balance sheet date, and are therefore considered a Level 1 valuation.</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Certificates of deposit held for investment
with an original maturity greater than three months are carried at amortized cost and reported as short-term investments on the balance
sheets. The type of certificates of deposit that the Company invests in are not considered debt securities under Financial Accounting
Standards Board ("FASB") Accounting Standards Codification (&#8220;ASC&#8221;) 320, Investments - Debt Securities. </p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueOfFinancialInstrumentsPolicy', window );">Fair Value of Financial Instruments</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Fair Value of Financial Instruments</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">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.&#160; The standard describes three levels of inputs that may be used to measure fair value:</p><table border="0" cellpadding="0" cellspacing="0" style="width: 100%; margin-bottom: 6pt; font: 10pt Times New Roman, Times, Serif">
<tr style="vertical-align: top">
  <td style="text-align: justify; width: 0.5in"><span>&#9726;</span></td>
  <td style="text-align: justify">Level 1: Quoted prices (unadjusted) for identical assets or liabilities in active markets that the entity has the ability to access as
of the measurement date.</td></tr>
</table><table border="0" cellpadding="0" cellspacing="0" style="width: 100%; margin-bottom: 6pt; font: 10pt Times New Roman, Times, Serif">
<tr style="vertical-align: top">
  <td style="text-align: justify; width: 0.5in"><span>&#9726;</span></td>
  <td style="text-align: justify">Level 2: Significant other observable inputs other than Level 1 prices such as quoted prices for similar assets or liabilities; quoted
prices in markets that are not active; or other inputs that are observable or can be corroborated by observable market data.</td></tr>
</table><table border="0" cellpadding="0" cellspacing="0" style="width: 100%; margin-bottom: 6pt; font: 10pt Times New Roman, Times, Serif">
<tr style="vertical-align: top">
  <td style="text-align: justify; width: 0.5in"><span>&#9726;</span>&#160;</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="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The carrying amounts of financial instruments,
including cash and cash equivalents, short term investment securities, accounts receivable, accounts payable and accrued expenses, approximated
fair value as of June 30, 2023 and 2022 because of the immediate or short-term maturity of these financial instruments.&#160;</p><span></span>
</td>
</tr>
<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_TradeAndOtherAccountsReceivablePolicy', window );">Accounts Receivable and Allowance for Doubtful Accounts</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Accounts Receivable and Allowance for Doubtful
Accounts</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; 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 doubtful accounts.&#160; The Company estimates the allowance based on its analysis of specific balances. Interest is not charged on
past due balances.&#160; Based on these factors, there was an allowance for doubtful accounts of $3,000 at June 30, 2023 and 2022.&#160;
Changes to the allowance for doubtful accounts are charged to expense and reduced by charge-offs, net of recoveries.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerSharePolicyTextBlock', window );">Per Share Amounts</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Per Share Amounts</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">ASC 260-10 &#8220;Earnings Per Share
(EPS)&#8221; requires the Company to calculate net income per share based on basic and diluted net income per share, as defined.
Basic EPS excludes dilution and is computed by dividing net income by the weighted average number of shares outstanding for the
period. Diluted EPS reflects the potential dilution that could occur if securities or other contracts to issue common stock
were exercised or converted into common stock. The dilutive effect of outstanding options issued by the Company are reflected
in diluted EPS using the treasury stock method. Under the treasury stock method, options will only have a dilutive effect when
the average market price of common stock during the period exceeds the exercise price of the options.</p><span></span>
</td>
</tr>
<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_ComprehensiveIncomePolicyPolicyTextBlock', window );">Comprehensive Income</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Comprehensive Income</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Comprehensive income consists of net income and other
comprehensive income (loss).&#160; Other comprehensive income for fiscal years ended June 30, 2023 and 2022 consists of unrealized holding
gains (losses) on available-for-sale debt securities.&#160;</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UseOfEstimates', window );">Use of Estimates</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Use of Estimates</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">The preparation of financial statements in conformity
with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that
affect the reported amount of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial
statements and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from those estimates.</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">&#160;</p><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_RecentlyIssuedAccountingStandardsPolicyTextBlock', window );">Recently Issued Accounting Standards</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Recently Adopted Accounting Standards</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">In December 2019, the FASB issued ASU 2019-12, &#8220;Income
Taxes (Topic 740): Simplifying the Accounting for Income Taxes.&#8221; ASU 2019-12 amends ASC 740 to simplify the accounting for income
taxes by removing certain exceptions for investments, intraperiod allocations and interim calculations, and adding guidance to reduce
complexity in the accounting standard under the FASB&#8217;s simplification initiative. ASU 2019-12 is effective for public entities for
fiscal years beginning after December 15, 2020. Upon adoption, the amendments in ASU 2019-12 should be applied on a prospective basis
to all periods presented. The Company adopted the new guidance under ASU 2019-12 in the first quarter of fiscal year 2022 and removed
the exception for intraperiod allocations from its interim period tax provision calculation, accordingly. The removal of the exception
for intraperiod allocations did not have a material impact on the Company.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">Recent Accounting Pronouncements Not Yet Adopted</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Recent Accounting Pronouncements Not Yet Adopted</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">In June 2016, the FASB issued ASU 2016-13, &#8220;Financial
Instruments-Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments&#8221;, <span>which
requires a financial asset measured at amortized cost basis to be presented at the net amount expected to be collected, with further clarifications
made more recently. For trade receivables, loans and other financial instruments, the Company will be required to use a forward-looking
expected loss model rather than the incurred loss model for recognizing credit losses which reflects losses that are probable. Credit
losses relating to available-for-sale debt securities are required to be recorded through an allowance for credit losses rather than as
a reduction in the amortized cost basis of the securities. </span>ASU 2016-13 is effective for public entities for fiscal years beginning
after December 15, 2022, including interim periods within those fiscal years. Upon adoption, the amendments in ASU 2016-13 should be applied
on a prospective basis to all periods presented relating to available-for-sale debt securities. For all other financial instruments the
Company upon adoption will apply the amendments on a modified-retrospective approach. The Company is expected to adopt the new guidance
under ASU 2016-13 in the first quarter of fiscal year 2024 and is currently evaluating the impact of the adoption on its financial statements.
The adoption of this standard is not expected to have a material impact on the Company&#8217;s financial statements.</p><span></span>
</td>
</tr>
<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_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock', window );">Impairment of Long-Lived Assets</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Impairment of Long-Lived Assets</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify">Long-lived assets, including property, plant, and
equipment, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not
be recoverable.&#160; Recoverability of assets to be held and used is measured by a comparison of the carrying amount of an asset to estimated
undiscounted future cash flows expected to be generated by the asset.&#160; If the carrying amount of an asset exceeds its estimated future
cash flows, an impairment charge is recognized by the amount by which the carrying amount of the asset exceeds the fair value of the asset.&#160;
There were no impairments of long-lived assets in fiscal years 2023 and 2022.&#160; Assets to be disposed of are separately presented
in the balance sheet and reported at the lower of the carrying amount or fair value less costs to sell, and no longer depreciated.&#160;
The assets and liabilities of a disposed group classified as held for sale are presented separately in the appropriate asset and liability
sections of the balance sheet, if applicable.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskCreditRisk', window );">Concentrations of Risk</a></td>
<td class="text"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Concentrations of Risk</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The market for our defense electronics products
is largely dependent on the availability of new contracts from the United States and foreign governments to prime contractors to which
we provide components.&#160; Any decline in expenditures by the United States or foreign governments may have an adverse effect on our
financial performance.&#160;</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">Generally, U.S. Government contracts are subject
to procurement laws and regulations.&#160; Some of the Company&#8217;s contracts are governed by the Federal Acquisition Regulation (FAR),
which lays out uniform policies and procedures for acquiring goods and services by the U.S. Government, and agency-specific acquisition
regulations that implement or supplement the FAR.&#160; For example, the Department of Defense implements the FAR through the Defense
Federal Acquisition Regulation (DFAR).</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify">The FAR also contains guidelines and regulations
for managing a contract after award, including conditions under which contracts may be terminated, in whole or in part, at the government&#8217;s
convenience or for default.&#160; If a contract is terminated for the convenience of the government, a contractor is entitled to receive
payments for its allowable costs and, in general, the proportionate share of fees or earnings for the work done.&#160; If a contract is
terminated for default, the government generally pays for only the work it has accepted.&#160; These regulations also subject the Company
to financial audits and other reviews by the government of its costs, performance, accounting and general business practices relating
to its contracts, which may result in adjustment of the Company&#8217;s contract-related costs and fees.</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_ContractLiabilitiesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for contract liabilities.</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_ContractLiabilitiesPolicyTextBlock</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_esp_RecentlyIssuedAccountingStandardsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy pertaining to new accounting standards that may impact the entity's financial reporting.</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_RecentlyIssuedAccountingStandardsPolicyTextBlock</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_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-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_CashAndCashEquivalentsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates 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> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-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_CashAndCashEquivalentsPolicyTextBlock</td>
</tr>
<tr>
<td style="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_ComprehensiveIncomePolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for comprehensive income.</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_ComprehensiveIncomePolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="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_ConcentrationRiskCreditRisk">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for credit risk.</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 942<br> -SubTopic 825<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480981/942-825-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-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_ConcentrationRiskCreditRisk</td>
</tr>
<tr>
<td style="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_DepreciationDepletionAndAmortizationPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for depreciation, depletion, and amortization of property and equipment costs, including methods used and estimated useful lives and how impairment of such assets is assessed and recognized.</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 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483426/235-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_DepreciationDepletionAndAmortizationPolicyTextBlock</td>
</tr>
<tr>
<td style="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_EarningsPerSharePolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements.</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 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-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_EarningsPerSharePolicyTextBlock</td>
</tr>
<tr>
<td style="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_FairValueOfFinancialInstrumentsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for determining the fair value of financial instruments.</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 60<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 820<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482053/820-10-60-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 825<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-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_FairValueOfFinancialInstrumentsPolicy</td>
</tr>
<tr>
<td style="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_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible 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 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.CC)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480091/360-10-S99-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 05<br> -Paragraph 4<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482338/360-10-05-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_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock</td>
</tr>
<tr>
<td style="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_IncomeTaxPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.</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 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(h)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479886/946-10-S99-3<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 17<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-17<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 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-9<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482525/740-10-45-25<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482525/740-10-45-28<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-19<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-1<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 20<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-20<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxPolicyTextBlock</td>
</tr>
<tr>
<td style="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_InventoryPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.</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 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483489/210-10-50-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(6)(b))<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/exampleRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483426/235-10-50-4<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 912<br> -SubTopic 330<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482105/912-330-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//330/tableOfContent<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483080/330-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483080/330-10-50-4<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 270<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482989/270-10-45-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryPolicyTextBlock</td>
</tr>
<tr>
<td style="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_InvestmentPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for investment in financial asset.</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 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(3)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479886/946-10-S99-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(f)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479886/946-10-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(f)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479886/946-10-S99-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(f)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479886/946-10-S99-3<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 12<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-12<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 19<br> -Subparagraph (2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/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_InvestmentPolicyTextBlock</td>
</tr>
<tr>
<td style="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_NewAccountingPronouncementsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.</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_NewAccountingPronouncementsPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="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_RevenueRecognitionPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources.</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 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483426/235-10-50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483426/235-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_RevenueRecognitionPolicyTextBlock</td>
</tr>
<tr>
<td style="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_TradeAndOtherAccountsReceivablePolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for accounts 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 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481962/310-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481569/310-20-50-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11B<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 310<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481962/310-10-50-11B<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<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/2147481962/310-10-50-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -SubTopic 10<br> -Topic 310<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481962/310-10-50-6<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Subparagraph (d)<br> -SubTopic 10<br> -Topic 310<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481962/310-10-50-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_TradeAndOtherAccountsReceivablePolicy</td>
</tr>
<tr>
<td style="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_UseOfEstimates">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.</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 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-9<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-12<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-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_UseOfEstimates</td>
</tr>
<tr>
<td style="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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216644705120">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_AccountingPoliciesAbstract', window );"><strong>Summary of Significant Accounting Policies [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_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock', window );">Schedule of the Estimated Useful Lives of Depreciable Assets</a></td>
<td class="text">Estimated useful lives of depreciable assets
are as follows:<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 80%; border-collapse: collapse; margin-left: auto; margin-right: auto;">
  <tr style="vertical-align: top; background-color: rgb(204,238,255)">
    <td style="width: 50%; padding-bottom: 6pt">Buildings and improvements</td>
    <td style="width: 50%; padding-bottom: 6pt; text-align: center">10 &#8211; 50 years</td></tr>
  <tr style="vertical-align: top; ">
    <td style="padding-bottom: 6pt">Machinery and equipment</td>
    <td style="padding-bottom: 6pt; text-align: center">3 &#8211; 20 years</td></tr>
  <tr style="vertical-align: top; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 6pt">Furniture and fixtures</td>
    <td style="padding-bottom: 6pt; text-align: center">7 &#8211; 10 years</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_esp_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 estimated useful lives of depreciable assets.</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_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock</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_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216737227632">
<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">12 Months Ended</th>
</tr>
<tr><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_InvestmentsDebtAndEquitySecuritiesAbstract', 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 Available-for-Sale Securities</a></td>
<td class="text">The Company classifies investment securities as available-for-sale which have been determined to be level 1 assets.&#160; The cost,
gross unrealized gains, gross unrealized losses and fair value debt securities by major security type at June 30, 2023&#160;and June 30,
2022 are as follows:<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <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="font: 10pt Times New Roman, Times, Serif; white-space: nowrap; text-decoration: underline">June 30, 2023</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">11,280,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-6">&#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-7">&#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">11,280,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">$</td><td style="text-align: right">260,475</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">165</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">(7,843</td><td style="white-space: nowrap; text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">252,797</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">$</td><td style="border-bottom: Black 1pt solid; text-align: right">430,952</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">1,225</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">(301</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">$</td><td style="border-bottom: Black 1pt solid; text-align: right">431,876</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">11,971,427</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">1,390</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(8,144</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">11,964,673</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: 0 0 6pt; text-indent: 0.25in"><span style="text-underline-style: double">&#160;</span></p><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <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="font: 10pt Times New Roman, Times, Serif; text-decoration: underline; white-space: nowrap">June 30, 2022</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">3,639,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-8">&#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-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">3,639,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; padding-bottom: 1pt">Municipal bonds</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">72,225</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"><div style="-sec-ix-hidden: hidden-fact-10">&#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">$</td><td style="border-bottom: Black 1pt solid; text-align: right">(2,446</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">$</td><td style="border-bottom: Black 1pt solid; text-align: right">69,779</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total investment securities</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">3,711,225</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"><div style="-sec-ix-hidden: hidden-fact-11">&#8212;</div></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">(2,446</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">3,708,779</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</a></td>
<td class="text">As of June 30, 2023 and June 30, 2022, the remaining
contractual maturities of available-for-sale debt securities were as follows:<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="6" style="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">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: center">&#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="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">One Year</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">Five Years</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">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">June 30, 2023</td><td>&#160;</td>
    <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">11,711,876</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">252,797</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">11,964,673</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, 2022</td><td>&#160;</td>
    <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">3,639,000</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">69,779</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">3,708,779</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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_InvestmentsDebtAndEquitySecuritiesAbstract</td>
</tr>
<tr>
<td style="padding-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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216635958896">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Contracts in Process (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_ContractorsAbstract', window );"><strong>Contracts in Process [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_ScheduleOfContractsInProcessTableTextBlock', window );">Schedule of Contracts in Process</a></td>
<td class="text">Contracts in process
at June 30, 2023 and 2022 are as follows:<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <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">2023</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">2022</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%; text-align: left">Unrecognized gross contract value</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">83,577,153</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">76,782,028</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left">Costs related to contracts in process</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">17,318,579</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">16,207,419</td><td style="white-space: nowrap; 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_esp_ScheduleOfContractsInProcessTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule of contracts in process.</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_ScheduleOfContractsInProcessTableTextBlock</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_ContractorsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ContractorsAbstract</td>
</tr>
<tr>
<td style="padding-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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216635958896">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property, Plant and Equipment (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentTextBlock', window );">Schedule of Property, Plant and Equipment</a></td>
<td class="text">Property, plant and equipment at June 30, 2023
and 2022 is as follows:<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 90%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <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">2023</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">2022</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%">Land</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">45,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: 10%; text-align: right">45,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">Building and improvements</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4,811,179</td><td 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,450,399</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">Machinery and equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">11,402,679</td><td 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,287,648</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">Furniture and fixtures</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">164,200</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">164,200</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">16,423,058</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">15,947,247</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">Accumulated depreciation</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">(13,597,969</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">(13,149,254</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="text-align: left; padding-bottom: 2.5pt">Property, plant and equipment, net</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">2,825,089</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">2,797,993</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: 0; text-align: justify">&#160;</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_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-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_PropertyPlantAndEquipmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.</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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentTextBlock</td>
</tr>
<tr>
<td style="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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216643641328">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Provision for Income Taxes (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_IncomeTaxDisclosureAbstract', window );"><strong>Provision for Income Taxes [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_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock', window );">Schedule of Components of the Provision for Income Taxes</a></td>
<td class="text">A summary of the components of the provision for income
taxes for the years ended June 30, 2023 and 2022 is as follows:<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <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">2023</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">2022</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%; text-align: left">Current tax expense - federal</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">1,059,743</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">313,705</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left">Current tax expense - state</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">9,595</td><td 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,978</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">Deferred tax (benefit) expense</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">(40,002</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">9,271</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; padding-left: 0.5in">Provision for income taxes</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">1,029,336</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">327,954</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_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock', window );">Schedule of Effective Income Tax Rates</a></td>
<td class="text">The combined U.S. federal and state effective
income tax rates<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 90%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <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">2023</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">2022</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%; text-align: left">U.S. federal statutory income tax rate</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right">21.0</td><td style="white-space: nowrap; width: 1%; text-align: left">%</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right">21.0</td><td style="white-space: nowrap; width: 1%; text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 0pt; text-align: left">Increase (reduction) in rate resulting from:</td><td>&#160;</td>
    <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">State franchise tax, net of federal income tax benefit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.2</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.3</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">ESOP cost versus Fair Market Value</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(0.2</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.3</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">Dividend on allocated ESOP shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</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">&#160;</td><td style="text-align: right">(3.1</td><td style="white-space: nowrap; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt; text-align: left">Stock-based compensation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1.0</td><td 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.0</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">Rate Differential on Net Operating Loss Carryback</td><td>&#160;</td>
    <td style="text-align: left">&#160;</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">&#160;</td><td style="text-align: right">(0.1</td><td style="white-space: nowrap; text-align: left">)</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">(0.1</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">(0.2</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="text-align: left; padding-bottom: 2.5pt">Effective tax rate</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">21.9</td><td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 1.5pt; text-align: left">%</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">20.6</td><td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 1.5pt; text-align: left">%</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_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock', window );">Schedule of Deferred Tax Assets and Liabilities</a></td>
<td class="text">deferred tax assets and deferred tax liabilities as of June
30, 2023 and 2022 are presented as follows:<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 90%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <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">2023</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">2022</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">Deferred tax assets:</td><td>&#160;</td>
    <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; width: 74%; text-align: left">Accrued expenses</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">273,059</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">204,774</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 20pt">ESOP</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">24,407</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">14,237</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; text-align: left">Stock-based compensation</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">36,552</td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">33,719</td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 40pt; text-align: left; padding-bottom: 1pt">Total deferred tax assets</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">334,018</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">252,730</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">&#160;</td><td>&#160;</td>
    <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">Deferred tax liability:</td><td>&#160;</td>
    <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">Property, plant and equipment - principally due to differences in depreciation methods</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">337,501</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">374,566</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">Inventory - effect of uniform capitalization</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">99,215</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">19,276</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 20pt; text-align: left; padding-bottom: 1pt">Prepaid expenses</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">35,129</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">36,716</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-bottom: 1pt; padding-left: 40pt; text-align: left">Total deferred tax liability</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">471,845</td><td style="padding-bottom: 1pt; white-space: nowrap; text-align: left">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">$</td><td style="border-bottom: Black 1pt solid; text-align: right">430,558</td><td style="padding-bottom: 1pt; 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; padding-bottom: 2.5pt">Net deferred tax liability</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">(137,827</td><td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 2pt; 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">(177,828</td><td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 2pt; text-align: left">)</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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.</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 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Paragraph 9<br> -Section 50<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_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax 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 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Paragraph 2<br> -Section 50<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_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Paragraph 12<br> -Section 50<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-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_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock</td>
</tr>
<tr>
<td style="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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216644705120">
<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">12 Months Ended</th>
</tr>
<tr><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_esp_EmployeeStockOwnershipPlanTablesLineItems', 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">The ESOP shares as of June 30, 2023
and 2022 were as follows:<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <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">2023</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">2022</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%; text-indent: 0in">Allocated shares</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right">484,958</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: 10%; text-align: right">496,091</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-bottom: 1pt">Unreleased shares</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">233,645</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">256,293</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total 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">718,603</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">752,384</td><td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 10pt; 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">3,913,554</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,649,612</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_esp_EmployeeStockOwnershipPlanTablesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_EmployeeStockOwnershipPlanTablesLineItems</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_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>
</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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216636083312">
<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">12 Months Ended</th>
</tr>
<tr><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_esp_StockBasedCompensationTablesLineItems', 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 for Option Awards</a></td>
<td class="text">The table below outlines the weighted average assumptions
that the Company used to calculate the fair value of each option award for the year ended June 30, 2023 and 2022.<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap; text-align: justify">&#160;</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">2023</td><td style="padding-bottom: 1pt">&#160;</td>
    <td style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">2022</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 78%; text-align: left; text-indent: 0in">Dividend yield</td><td style="width: 1%">&#160;</td>
    <td style="width: 10%; text-align: right">0.03%</td><td style="width: 1%">&#160;</td>
    <td style="width: 10%; text-align: right"><div style="-sec-ix-hidden: hidden-fact-14">&#8212;</div></td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left">Expected stock price volatility</td><td>&#160;</td>
    <td style="text-align: right">27.20%</td><td>&#160;</td>
    <td style="text-align: right">25.60%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Risk-free interest rate</td><td>&#160;</td>
    <td style="text-align: right">2.71%</td><td>&#160;</td>
    <td style="text-align: right">0.99%</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left">Expected option life (in years)</td><td>&#160;</td>
    <td style="text-align: right">5.4yrs</td><td>&#160;</td>
    <td style="text-align: right">5.4yrs</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-indent: -10pt">Weighted average fair value per share of options granted during the period</td><td>&#160;</td>
    <td style="text-align: right">$4.18</td><td>&#160;</td>
    <td style="text-align: right">$3.74</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">The following table summarizes stock option
activity during the twelve months ended June 30, 2023:<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="15" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">Employee Stock Options Plan</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 style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">&#160;</td><td style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Weighted</td><td style="text-align: center">&#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 style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Weighted</td><td style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Average</td><td style="text-align: center">&#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 style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Average</td><td style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Remaining</td><td style="text-align: center">&#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 style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Exercise</td><td style="text-align: center">&#160;</td>
    <td colspan="3" style="white-space: nowrap; text-align: center">Contractual</td><td style="text-align: center">&#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>&#160;</td>
    <td colspan="3" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">to Option</td><td style="text-align: center; border-bottom: Black 1pt solid">&#160;</td>
    <td colspan="3" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">Price</td><td style="text-align: center; border-bottom: Black 1pt solid">&#160;</td>
    <td colspan="3" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">Term</td><td style="text-align: center; border-bottom: Black 1pt solid">&#160;</td>
    <td colspan="3" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center">Value</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 49%">Balance at July 1, 2022</td><td style="width: 3%">&#160;</td>
    <td style="width: 3%; text-align: left">&#160;</td><td style="width: 5%; text-align: right">246,273</td><td style="white-space: nowrap; width: 3%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 3%; text-align: right">$</td><td style="width: 5%; text-align: right">20.89</td><td style="white-space: nowrap; width: 3%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 3%; text-align: left">&#160;</td><td style="width: 5%; text-align: right">6.73</td><td style="white-space: nowrap; width: 3%; text-align: left">&#160;</td><td style="width: 1%">&#160;</td>
    <td style="width: 3%; text-align: right">&#160;</td><td style="width: 5%; text-align: right">&#160;</td><td style="white-space: nowrap; width: 4%; 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">74,200</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: right">$</td><td style="text-align: right">13.81</td><td 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.12</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: right">&#160;</td><td style="text-align: right">&#160;</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Exercised</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-15">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: right">&#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"><div style="-sec-ix-hidden: hidden-fact-17">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: right">&#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>&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1pt solid; text-align: right">(24,142</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: right">$</td><td style="border-bottom: Black 1pt solid; text-align: right">20.46</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-18">&#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: right">&#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 June 30, 2023</td><td>&#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">296,331</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: right">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">19.15</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.49</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: right">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">338,243</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 June 30, 2023</td><td>&#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">283,745</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: right">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">19.40</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.38</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: right">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">298,723</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 June 30, 2023</td><td>&#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">163,731</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: right">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">23.13</td><td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">4.74</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: right">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">0</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">The following table summarizes changes in non-vested stock options
during the twelve months ended June 30, 2023:<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">&#160;</td><td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Weighted</td><td style="text-align: center; vertical-align: bottom">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Number of</td><td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Average</td><td style="text-align: center; vertical-align: bottom">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Shares</td><td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Grant Date</td><td style="text-align: center; vertical-align: bottom">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">&#160;</td><td>&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Subject</td><td style="text-align: center; vertical-align: bottom">&#160;</td><td style="text-align: center; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center">Fair Value</td><td style="text-align: center; vertical-align: bottom">&#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="vertical-align: bottom; white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">to Option</td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td>
    <td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center; border-bottom: Black 1pt solid">(per Option)</td><td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 74%">Non-Vested at July 1, 2022</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right">104,175</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">2.92</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">74,200</td><td 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.18</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">(34,075</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.59</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="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">(11,700</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">2.75</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-bottom: 2.5pt">Non-Vested at June 30, 2023</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">132,600</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.98</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_esp_StockBasedCompensationTablesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_StockBasedCompensationTablesLineItems</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_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> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<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> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<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>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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216644909024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_StockholdersEquityNoteAbstract', window );"><strong>Stockholders' Equity Note [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_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock', window );">Schedule of Reserved Common Shares for Future Issuance</a></td>
<td class="text">The Company has reserved common shares for future
issuance as follows as of June 30, 2023:<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 80%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 87%; text-align: left">Stock options outstanding</td><td style="width: 1%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right">296,331</td><td style="white-space: nowrap; width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-align: left; padding-bottom: 1pt">Stock options available for issuance</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">154,169</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-bottom: 2.5pt">Number of common shares reserved</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">450,500</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_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Schedule of Reconciliation of the Numerators and Denominators of the Basic and Diluted Earnings Per Share Computations</a></td>
<td class="text">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 years ended
June 30:<table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <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">2023</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">2022</td><td style="padding-bottom: 1pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap">Numerator:</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: 74%; 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: 10%; border-bottom: Black 2.5pt double; text-align: right">3,677,131</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: 10%; border-bottom: Black 2.5pt double; text-align: right">1,265,127</td><td style="white-space: nowrap; width: 1%; 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>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 style="font-family: Courier New, Courier, Monospace">&#160;</td>
    <td style="font-family: Courier New, Courier, Monospace; text-align: left">&#160;</td><td style="font-family: Courier New, Courier, Monospace; text-align: right">&#160;</td><td style="white-space: nowrap; font-family: Courier New, Courier, Monospace; text-align: left">&#160;</td><td style="font-family: Courier New, Courier, Monospace">&#160;</td>
    <td style="font-family: Courier New, Courier, Monospace; text-align: left">&#160;</td><td style="font-family: Courier New, Courier, Monospace; text-align: right">&#160;</td><td style="white-space: nowrap; font-family: Courier New, Courier, Monospace; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 30pt; text-align: left">Common shares outstanding, beginning of period</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><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="text-indent: -10pt; padding-left: 30pt; text-align: left">Common shares issued to ESOP during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-19">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-20">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 30pt">Unearned ESOP shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(256,293</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">(279,429</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-indent: -10pt; padding-left: 30pt">Weighted average common shares issued during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-21">&#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"><div style="-sec-ix-hidden: hidden-fact-22">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 30pt">Weighted average common shares purchased during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-23">&#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"><div style="-sec-ix-hidden: hidden-fact-24">&#8212;</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="text-indent: -10pt; padding-left: 30pt; padding-bottom: 1pt">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">8,516</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">8,700</td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 30pt; padding-bottom: 2.5pt">Denominator for basic earnings per common shares &#8211; 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,454,856</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,431,904</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-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="text-indent: -10pt; padding-left: 30pt">Common shares outstanding, beginning of period</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><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="text-indent: -10pt; padding-left: 30pt; text-align: left">Common shares issued to ESOP during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-25">&#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"><div style="-sec-ix-hidden: hidden-fact-26">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 30pt">Unearned ESOP shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(256,293</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">(279,429</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-indent: -10pt; padding-left: 30pt">Weighted average common shares issued during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-27">&#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"><div style="-sec-ix-hidden: hidden-fact-28">&#8212;</div></td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 30pt">Weighted average common shares purchased during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><div style="-sec-ix-hidden: hidden-fact-29">&#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"><div style="-sec-ix-hidden: hidden-fact-30">&#8212;</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="text-indent: -10pt; padding-left: 30pt">Weighted average ESOP shares earned during the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">8,516</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">8,700</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="text-indent: -10pt; padding-left: 30pt; padding-bottom: 1pt">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">16,160</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-31">&#8212;</div></td><td style="white-space: nowrap; padding-bottom: 1pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-indent: -10pt; padding-left: 30pt; padding-bottom: 2.5pt">Denominator for diluted earnings per common shares &#8211; 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,471,016</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,431,904</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: 0; text-align: justify">&#160;</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_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 schedule of common shares reserved for future issuance as stock option awards.</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_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock</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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityNoteAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StockholdersEquityNoteAbstract</td>
</tr>
<tr>
<td style="padding-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>46
<FILENAME>R34.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216644881744">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Quarterly Financial Information (Unaudited) (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_QuarterlyFinancialInformationDisclosureAbstract', window );"><strong>Quarterly Financial Information (Unaudited) [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_ScheduleOfQuarterlyFinancialInformationTableTextBlock', window );">Schedule of Quarterly Financial Information</a></td>
<td class="text"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 90%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;">
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap; text-align: justify">&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">First</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Second</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Third</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right">Fourth</td><td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="white-space: nowrap; font-weight: bold">2023</td><td style="padding-bottom: 1pt">&#160;</td>
    <td colspan="2" style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid">Quarter</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">Quarter</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">Quarter</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">Quarter</td><td style="padding-bottom: 1pt">&#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">8,635,795</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">8,804,109</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">9,809,616</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">8,342,803</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">Gross profit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,812,142</td><td 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,260,722</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,973,429</td><td 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,004,245</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 income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">768,266</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,146,042</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">867,288</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">895,535</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <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; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Basic</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.31</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.47</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.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">0.37</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 10pt">Diluted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.31</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.47</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.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">0.36</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="white-space: nowrap; font-weight: bold">2022</td><td>&#160;</td>
    <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">Net sales</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">7,545,432</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">7,458,050</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">8,620,049</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">8,481,243</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">Gross profit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,353,098</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,206,817</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,734,880</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,177,363</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 income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">306,061</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">21,201</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">661,359</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">276,506</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <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; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Basic</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.13</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.01</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.27</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.11</td><td style="white-space: nowrap; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; ">
    <td style="padding-left: 10pt">Diluted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.13</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.01</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.27</td><td style="white-space: nowrap; text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.11</td><td style="white-space: nowrap; 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_QuarterlyFinancialInformationDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_QuarterlyFinancialInformationDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfQuarterlyFinancialInformationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 quarterly financial data. Includes, but is not limited to, financial information for fiscal quarters, cumulative effect of a change in accounting principle and earnings per share data.</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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 270<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482964/270-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_ScheduleOfQuarterlyFinancialInformationTableTextBlock</td>
</tr>
<tr>
<td style="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>47
<FILENAME>R35.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216638960208">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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_AccountingPoliciesAbstract', window );"><strong>Summary of Significant Accounting Policies [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 );">Doubtful accounts</a></td>
<td class="nump">$ 3,000<span></span>
</td>
<td class="nump">$ 3,000<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_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>48
<FILENAME>R36.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216640808144">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies (Details) - Schedule of the Estimated Useful Lives of Depreciable Assets<br></strong></div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember', window );">Buildings and improvements [Member] | Minimum [Member]</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_esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems', window );"><strong>Summary of Significant Accounting Policies (Details) - Schedule of the Estimated Useful Lives of Depreciable Assets [Line Items]</strong></a></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_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives of depreciable assets</a></td>
<td class="text">10 years<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember', window );">Buildings and improvements [Member] | Maximum [Member]</a></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_esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems', window );"><strong>Summary of Significant Accounting Policies (Details) - Schedule of the Estimated Useful Lives of Depreciable Assets [Line Items]</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_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives of depreciable assets</a></td>
<td class="text">50 years<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember', window );">Machinery and equipment [Member] | Minimum [Member]</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_esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems', window );"><strong>Summary of Significant Accounting Policies (Details) - Schedule of the Estimated Useful Lives of Depreciable Assets [Line Items]</strong></a></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_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives of depreciable assets</a></td>
<td class="text">3 years<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember', window );">Machinery and equipment [Member] | Maximum [Member]</a></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_esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems', window );"><strong>Summary of Significant Accounting Policies (Details) - Schedule of the Estimated Useful Lives of Depreciable Assets [Line Items]</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_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives of depreciable assets</a></td>
<td class="text">20 years<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Furniture and fixtures [Member] | Minimum [Member]</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_esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems', window );"><strong>Summary of Significant Accounting Policies (Details) - Schedule of the Estimated Useful Lives of Depreciable Assets [Line Items]</strong></a></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_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives of depreciable assets</a></td>
<td class="text">7 years<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Furniture and fixtures [Member] | Maximum [Member]</a></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_esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems', window );"><strong>Summary of Significant Accounting Policies (Details) - Schedule of the Estimated Useful Lives of Depreciable Assets [Line Items]</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_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives of depreciable assets</a></td>
<td class="text">10 years<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems</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_us-gaap_PropertyPlantAndEquipmentUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.</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_PropertyPlantAndEquipmentUsefulLife</td>
</tr>
<tr>
<td style="padding-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>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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember</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_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MinimumMember</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_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember</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>49
<FILENAME>R37.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216635813312">
<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">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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_esp_RevenueDetailsLineItems', window );"><strong>Revenue (Details) [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_Revenues', window );">Revenue</a></td>
<td class="nump">$ 35,592,323<span></span>
</td>
<td class="nump">$ 32,104,774<span></span>
</td>
</tr>
<tr class="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">2,018,642<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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_RevenueDetailsLineItems', window );"><strong>Revenue (Details) [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_ContractWithCustomerLiability', window );">Contract liabilities</a></td>
<td class="nump">8,081,838<span></span>
</td>
<td class="nump">3,384,474<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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_RevenueDetailsLineItems', window );"><strong>Revenue (Details) [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_us-gaap_Revenues', window );">Revenue</a></td>
<td class="nump">27,770,365<span></span>
</td>
<td class="nump">26,931,949<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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_RevenueDetailsLineItems', window );"><strong>Revenue (Details) [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_Revenues', window );">Revenue</a></td>
<td class="nump">7,821,958<span></span>
</td>
<td class="nump">$ 5,172,825<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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OrderOrProductionBacklogMember', window );">Order or Production Backlog [Member] | ASC 606 [Member]</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_esp_RevenueDetailsLineItems', window );"><strong>Revenue (Details) [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_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Intangible assets</a></td>
<td class="nump">$ 83,600,000<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_BacklogPercentageOfRecognitionsYearOne', window );">Backlog amount to be recognized, 2024</a></td>
<td class="nump">47.00%<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_BacklogPercentageOfRecognitionsYearTwo', window );">Backlog amount to be recognized, 2025</a></td>
<td class="nump">38.00%<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_BacklogPercentageOfRecognitionsYearThree', window );">Backlog amount to be recognized, 2026</a></td>
<td class="nump">11.00%<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_BacklogPercentageOfRecognitions', window );">Backlog amount to be recognized</a></td>
<td class="nump">4.00%<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_RevenueDetailsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_RevenueDetailsLineItems</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_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_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/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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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/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 2: 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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 5: 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 6: 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 7: 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 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)(iv))<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)(5))<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 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 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)(iii)(A))<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)(B))<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)(iv))<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)(5))<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 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 16: 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 17: 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 18: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 19: 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 20: 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 21: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<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 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 23: 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/2147479557/942-235-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_Revenues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=esp_ASC606Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=esp_ASC606Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementScenarioAxis=esp_UnitsDeliveredMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementScenarioAxis=esp_UnitsDeliveredMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementScenarioAxis=esp_MilestonesAchievedMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementScenarioAxis=esp_MilestonesAchievedMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OrderOrProductionBacklogMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OrderOrProductionBacklogMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>50
<FILENAME>R38.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216639523936">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Investment Securities (Details) - Schedule of Available-for-Sale Securities - USD ($)<br></strong></div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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 Available-for-Sale Securities [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_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized cost</a></td>
<td class="nump">$ 11,971,427<span></span>
</td>
<td class="nump">$ 3,711,225<span></span>
</td>
</tr>
<tr class="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">1,390<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="num">(8,144)<span></span>
</td>
<td class="num">(2,446)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair Value</a></td>
<td class="nump">11,964,673<span></span>
</td>
<td class="nump">3,708,779<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_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-Sale Securities [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_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized cost</a></td>
<td class="nump">11,280,000<span></span>
</td>
<td class="nump">3,639,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_AvailableForSaleSecuritiesDebtSecurities', window );">Fair Value</a></td>
<td class="nump">11,280,000<span></span>
</td>
<td class="nump">3,639,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_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-Sale Securities [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_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized cost</a></td>
<td class="nump">260,475<span></span>
</td>
<td class="nump">72,225<span></span>
</td>
</tr>
<tr class="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">165<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="num">(7,843)<span></span>
</td>
<td class="num">(2,446)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair Value</a></td>
<td class="nump">252,797<span></span>
</td>
<td class="nump">$ 69,779<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 );">US Treasury Bill Securities [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_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Schedule of Available-for-Sale Securities [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_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized cost</a></td>
<td class="nump">430,952<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_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross Unrealized Gains</a></td>
<td class="nump">1,225<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_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross Unrealized Losses</a></td>
<td class="num">(301)<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_AvailableForSaleSecuritiesDebtSecurities', window );">Fair Value</a></td>
<td class="nump">$ 431,876<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_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_AvailableForSaleDebtSecuritiesAmortizedCostBasis">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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 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/2147479440/944-210-S99-1<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 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_AvailableForSaleDebtSecuritiesAmortizedCostBasis</td>
</tr>
<tr>
<td style="padding-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_AvailableForSaleSecuritiesDebtSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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).</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 (aa)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<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/2147481830/320-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 4: 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_AvailableForSaleSecuritiesDebtSecurities</td>
</tr>
<tr>
<td style="padding-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>
<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>51
<FILENAME>R39.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216738873440">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Investment Securities (Details) - Schedule of Contractual Maturities - USD ($)<br></strong></div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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_esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems', window );"><strong>Schedule of Contractual Maturities [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_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue', window );">Less than One Year</a></td>
<td class="nump">$ 11,711,876<span></span>
</td>
<td class="nump">$ 3,639,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_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue', window );">One to Five Years</a></td>
<td class="nump">252,797<span></span>
</td>
<td class="nump">69,779<span></span>
</td>
</tr>
<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 );">Fair Value</a></td>
<td class="nump">$ 11,964,673<span></span>
</td>
<td class="nump">$ 3,708,779<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems</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_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/2147480832/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/2147480832/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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>52
<FILENAME>R40.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216643637712">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Contracts in Process (Details) - Schedule of Contracts in Process - USD ($)<br></strong></div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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_esp_ScheduleOfContractsInProcessAbstract', window );"><strong>Schedule Of Contracts In Process 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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_UnrecognizedGrossContractValue', window );">Unrecognized gross contract value</a></td>
<td class="nump">$ 83,577,153<span></span>
</td>
<td class="nump">$ 76,782,028<span></span>
</td>
</tr>
<tr class="re">
<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">$ 17,318,579<span></span>
</td>
<td class="nump">$ 16,207,419<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_ScheduleOfContractsInProcessAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_ScheduleOfContractsInProcessAbstract</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_UnrecognizedGrossContractValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Unrecognized gross contract value.</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_UnrecognizedGrossContractValue</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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<FILENAME>R41.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216639472592">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property, Plant and Equipment (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="1">6 Months Ended</th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 19, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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_esp_PropertyPlantandEquipmentDetailsLineItems', window );"><strong>Property, Plant and Equipment (Details) [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>
</tr>
<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_Depreciation', window );">Depreciation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 484,920<span></span>
</td>
<td class="nump">$ 494,635<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquipmentExpense', window );">Funding amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 7,400,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_PropertyPlantAndEquipmentNet', window );">Property, Plant and equipment, Net</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,825,089<span></span>
</td>
<td class="nump">2,797,993<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_RevenueRecognitionMilestoneMethodRevenuesRecognized', window );">Revenue recognition, Milestone method, Revenues recognized</a></td>
<td class="nump">$ 969,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>
</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingImprovementsMember', window );">Building Improvements [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_esp_PropertyPlantandEquipmentDetailsLineItems', window );"><strong>Property, Plant and Equipment (Details) [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>
</tr>
<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_PropertyPlantAndEquipmentNet', window );">Property, Plant and equipment, Net</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 308,001<span></span>
</td>
<td class="nump">$ 58,296<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_PropertyPlantandEquipmentDetailsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_PropertyPlantandEquipmentDetailsLineItems</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_RevenueRecognitionMilestoneMethodRevenuesRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Revenue Recognition, Milestone Method, Revenue Recognized</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_RevenueRecognitionMilestoneMethodRevenuesRecognized</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>duration</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_EquipmentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equipment expense including depreciation, repairs, rentals, and service contract costs. This item also includes equipment purchases which do not qualify for capitalization in accordance with the entity's accounting policy. This item may also include furniture expenses.</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_EquipmentExpense</td>
</tr>
<tr>
<td style="padding-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_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/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)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 4: 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/2147480842/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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingImprovementsMember</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>54
<FILENAME>R42.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216638755456">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Property, Plant and Equipment (Details) - Schedule of Property, Plant and Equipment - USD ($)<br></strong></div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment, gross</a></td>
<td class="nump">$ 16,423,058<span></span>
</td>
<td class="nump">$ 15,947,247<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated depreciation</a></td>
<td class="num">(13,597,969)<span></span>
</td>
<td class="num">(13,149,254)<span></span>
</td>
</tr>
<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_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net</a></td>
<td class="nump">2,825,089<span></span>
</td>
<td class="nump">2,797,993<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandMember', window );">Land [Member]</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment, gross</a></td>
<td class="nump">45,000<span></span>
</td>
<td class="nump">45,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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingImprovementsMember', window );">Building and improvements [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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment, gross</a></td>
<td class="nump">4,811,179<span></span>
</td>
<td class="nump">4,450,399<span></span>
</td>
</tr>
<tr class="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">308,001<span></span>
</td>
<td class="nump">58,296<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember', window );">Machinery and equipment [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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment, gross</a></td>
<td class="nump">11,402,679<span></span>
</td>
<td class="nump">11,287,648<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Furniture and fixtures [Member]</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, plant and equipment, gross</a></td>
<td class="nump">$ 164,200<span></span>
</td>
<td class="nump">$ 164,200<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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.</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)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/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(14))<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 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-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/2147479440/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_PropertyPlantAndEquipmentLineItems</td>
</tr>
<tr>
<td style="padding-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_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/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)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 4: 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/2147480842/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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandMember</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingImprovementsMember</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember</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>55
<FILENAME>R43.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216641098944">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Pension Expense (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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_CompensationAndRetirementDisclosureAbstract', window );"><strong>Pension Expense [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_PensionAndOtherPostretirementBenefitExpense', window );">Defined benefit contributions and expenses</a></td>
<td class="nump">$ 102,612<span></span>
</td>
<td class="nump">$ 110,378<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MultiemployerPlanPensionSignificantPlanContribution', window );">Expenses contributions</a></td>
<td class="nump">$ 72,350<span></span>
</td>
<td class="nump">$ 73,771<span></span>
</td>
</tr>
<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_DefinedContributionPlanEmployerMatchingContributionPercent', window );">Percentage of employer contribution</a></td>
<td class="nump">10.00%<span></span>
</td>
<td class="nump">10.00%<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_DefinedContributionPlanEmployersMatchingContribution', window );">Employee contribution</a></td>
<td class="nump">$ 53,768<span></span>
</td>
<td class="nump">$ 53,836<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_DefinedContributionPlanEmployersMatchingContribution">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 contributions which the employer contributes in a matching contribution to a defined contribution 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_DefinedContributionPlanEmployersMatchingContribution</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_CompensationAndRetirementDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CompensationAndRetirementDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_DefinedContributionPlanEmployerMatchingContributionPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 employees' gross pay for which the employer contributes a matching contribution to a defined contribution 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_DefinedContributionPlanEmployerMatchingContributionPercent</td>
</tr>
<tr>
<td style="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_MultiemployerPlanPensionSignificantPlanContribution">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 contribution received by multiemployer pension plan from all employers participating in multiemployer pension plan determined to be individually significant.</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 715<br> -SubTopic 80<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480547/715-80-55-8<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 715<br> -SubTopic 80<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480576/715-80-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_MultiemployerPlanPensionSignificantPlanContribution</td>
</tr>
<tr>
<td style="padding-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_PensionAndOtherPostretirementBenefitExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (reversal of cost) for pension and other postretirement benefits.</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_PensionAndOtherPostretirementBenefitExpense</td>
</tr>
<tr>
<td style="padding-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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>56
<FILENAME>R44.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216635161200">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Provision for Income Taxes (Details) - Schedule of Components of the Provision for Income Taxes - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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_esp_ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract', window );"><strong>Schedule of Components of the Provision for Income Taxes [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_CurrentFederalTaxExpenseBenefit', window );">Current tax expense - federal</a></td>
<td class="nump">$ 1,059,743<span></span>
</td>
<td class="nump">$ 313,705<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CurrentStateAndLocalTaxExpenseBenefit', window );">Current tax expense - state</a></td>
<td class="nump">9,595<span></span>
</td>
<td class="nump">4,978<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_DeferredIncomeTaxesExpenseBenefit', window );">Deferred tax (benefit) expense</a></td>
<td class="num">(40,002)<span></span>
</td>
<td class="nump">9,271<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_IncomeTaxExpenseBenefit', window );">Provision for income taxes</a></td>
<td class="nump">$ 1,029,336<span></span>
</td>
<td class="nump">$ 327,954<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_DeferredIncomeTaxesExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>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_DeferredIncomeTaxesExpenseBenefit</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_ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract</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_us-gaap_CurrentFederalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 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 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-9<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentFederalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-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_CurrentStateAndLocalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 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 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-9<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentStateAndLocalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-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_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 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 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 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 4: 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 5: 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 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(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 7: 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 8: 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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>57
<FILENAME>R45.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216635925104">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Provision for Income Taxes (Details) - Schedule of Effective Income Tax Rates<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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_esp_ScheduleOfEffectiveIncomeTaxRatesAbstract', window );"><strong>Schedule of Effective Income Tax Rates [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_USFederalStatutoryIncomeTaxRate', window );">U.S. federal statutory income tax rate</a></td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">21.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_IncreaseReductionInRateResultingFromAbstract', window );"><strong>Increase (reduction) in rate resulting from:</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_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes', window );">State franchise tax, net of federal income tax benefit</a></td>
<td class="nump">0.20%<span></span>
</td>
<td class="nump">0.30%<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_EffectiveIncomeTaxRateReconciliationESOPFairValue', window );">ESOP cost versus Fair Market Value</a></td>
<td class="num">(0.20%)<span></span>
</td>
<td class="num">(1.30%)<span></span>
</td>
</tr>
<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_EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends', window );">Dividend on allocated ESOP shares</a></td>
<td class="text"> <span></span>
</td>
<td class="num">(3.10%)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost', window );">Stock-based compensation</a></td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">4.00%<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_EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback', window );">Rate Differential on Net Operating Loss Carryback</a></td>
<td class="text"> <span></span>
</td>
<td class="num">(0.10%)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments', window );">Other</a></td>
<td class="num">(0.10%)<span></span>
</td>
<td class="num">(0.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_EffectiveIncomeTaxRateContinuingOperations', window );">Effective tax rate</a></td>
<td class="nump">21.90%<span></span>
</td>
<td class="nump">20.60%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_EffectiveIncomeTaxRateReconciliationESOPFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the difference between the effective income tax rate and domestic federal statutory income tax rate attributable to differences in ESOP fair value.</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_EffectiveIncomeTaxRateReconciliationESOPFairValue</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>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Rate differential on net oPercentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to rate Differential on net operating loss carryback.perating loss carryback.</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_EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback</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>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_IncreaseReductionInRateResultingFromAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_IncreaseReductionInRateResultingFromAbstract</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_ScheduleOfEffectiveIncomeTaxRatesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_ScheduleOfEffectiveIncomeTaxRatesAbstract</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_USFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>U.S. federal statutory income tax rate.</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_USFederalStatutoryIncomeTaxRate</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>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateContinuingOperations</td>
</tr>
<tr>
<td style="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_EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to deduction for dividend paid to employee stock ownership plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-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_EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends</td>
</tr>
<tr>
<td style="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_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to nondeductible 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://www.xbrl.org/2009/role/commonPracticeRef<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 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-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_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost</td>
</tr>
<tr>
<td style="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_EffectiveIncomeTaxRateReconciliationOtherAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments.</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 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-12<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-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_EffectiveIncomeTaxRateReconciliationOtherAdjustments</td>
</tr>
<tr>
<td style="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_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations applicable to state and local income tax expense (benefit), net of federal tax expense (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/2009/role/commonPracticeRef<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 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-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_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes</td>
</tr>
<tr>
<td style="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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>58
<FILENAME>R46.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216634998064">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Provision for Income Taxes (Details) - Schedule of Deferred Tax Assets and Liabilities - USD ($)<br></strong></div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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_esp_DeferredTaxAssetsAbstract', window );"><strong>Deferred tax 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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities', window );">Accrued expenses</a></td>
<td class="nump">$ 273,059<span></span>
</td>
<td class="nump">$ 204,774<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther', window );">ESOP</a></td>
<td class="nump">24,407<span></span>
</td>
<td class="nump">14,237<span></span>
</td>
</tr>
<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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost', window );">Stock-based compensation</a></td>
<td class="nump">36,552<span></span>
</td>
<td class="nump">33,719<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_DeferredTaxAssetsGross', window );">Total deferred tax assets</a></td>
<td class="nump">334,018<span></span>
</td>
<td class="nump">252,730<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_DeferredTaxLiabilityAbstract', window );"><strong>Deferred tax liability:</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_DeferredTaxLiabilitiesPropertyPlantAndEquipment', window );">Property, plant and equipment - principally due to differences in depreciation methods</a></td>
<td class="nump">337,501<span></span>
</td>
<td class="nump">374,566<span></span>
</td>
</tr>
<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_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts', window );">Inventory - effect of uniform capitalization</a></td>
<td class="nump">99,215<span></span>
</td>
<td class="nump">19,276<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesPrepaidExpenses', window );">Prepaid expenses</a></td>
<td class="nump">35,129<span></span>
</td>
<td class="nump">36,716<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_DeferredIncomeTaxLiabilities', window );">Total deferred tax liability</a></td>
<td class="nump">471,845<span></span>
</td>
<td class="nump">430,558<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_DeferredTaxAssetLiability', window );">Net deferred tax liability</a></td>
<td class="num">$ (137,827)<span></span>
</td>
<td class="num">$ (177,828)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_DeferredTaxAssetLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Net deferred tax asset (liability).</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_DeferredTaxAssetLiability</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_DeferredTaxAssetsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_DeferredTaxAssetsAbstract</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_DeferredTaxLiabilityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_DeferredTaxLiabilityAbstract</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_us-gaap_DeferredIncomeTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax liability attributable to taxable temporary differences.</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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-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(26)(a))<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(26)(b))<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 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/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_DeferredIncomeTaxLiabilities</td>
</tr>
<tr>
<td style="padding-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_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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 allowance, of deferred tax asset attributable to deductible temporary differences from compensation and benefits, 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/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-6<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 from share-based compensation.</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 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-6<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 from accrued liabilities.</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 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-6<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax consequences attributable to taxable temporary differences derived from inventory.</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 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-6<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-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_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxLiabilitiesPrepaidExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax consequences attributable to taxable temporary differences derived from prepaid expenses.</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_DeferredTaxLiabilitiesPrepaidExpenses</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxLiabilitiesPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax liability attributable to taxable temporary differences from property, plant, and equipment.</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 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-6<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-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_DeferredTaxLiabilitiesPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-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>59
<FILENAME>R47.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216738887616">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Significant Customers (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
</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_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember', window );">Geographic Concentration Risk [Member] | Revenue Benchmark [Member]</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_esp_SignificantCustomersDetailsLineItems', window );"><strong>Significant Customers (Details) [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_ConcentrationRiskPercentageOne', window );">Concentration risk percentage</a></td>
<td class="nump">81.00%<span></span>
</td>
<td class="nump">57.00%<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_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember', window );">Geographic Concentration Risk [Member] | Accounts Receivable [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_esp_SignificantCustomersDetailsLineItems', window );"><strong>Significant Customers (Details) [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_ConcentrationRiskPercentageOne', window );">Concentration risk percentage</a></td>
<td class="nump">81.00%<span></span>
</td>
<td class="nump">74.00%<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_ConcentrationRiskByTypeAxis=esp_GeographicConcentrationRisk1Member', window );">Foreign Customers [Member] | Revenue Benchmark [Member]</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_esp_SignificantCustomersDetailsLineItems', window );"><strong>Significant Customers (Details) [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_us-gaap_SalesTypeLeaseRevenue', window );">Sales (in Dollars)</a></td>
<td class="nump">$ 549,510<span></span>
</td>
<td class="nump">$ 1,644,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_ConcentrationRiskPercentageOne">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.</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_ConcentrationRiskPercentageOne</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>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_SignificantCustomersDetailsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_SignificantCustomersDetailsLineItems</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_us-gaap_SalesTypeLeaseRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 sales-type lease revenue.</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 6A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482964/270-10-50-6A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479773/842-30-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_SalesTypeLeaseRevenue</td>
</tr>
<tr>
<td style="padding-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_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember</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_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember</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_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember</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_ConcentrationRiskByTypeAxis=esp_GeographicConcentrationRisk1Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConcentrationRiskByTypeAxis=esp_GeographicConcentrationRisk1Member</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>60
<FILENAME>R48.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216738887488">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Employee Stock Ownership Plan (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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_esp_EmployeeStockOwnershipPlanDetailsLineItems', window );"><strong>Employee Stock Ownership Plan (Details) [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_EmployeeStockOwnershipPlanESOPPlanDescription', window );">Employee stock ownership plan (ESOP)</a></td>
<td class="text">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.<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="nump">$ 365,646<span></span>
</td>
<td class="nump">$ 325,067<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_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis=esp_EmployeeStockOwnershipPlanMember', window );">Employee Stock Ownership Plan [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_esp_EmployeeStockOwnershipPlanDetailsLineItems', window );"><strong>Employee Stock Ownership Plan (Details) [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_DebtInstrumentInterestRateStatedPercentage', window );">Interest rate on loan</a></td>
<td class="nump">3.00%<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="nump">$ 365,646<span></span>
</td>
<td class="nump">$ 325,067<span></span>
</td>
</tr>
<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</a></td>
<td class="nump">33,780<span></span>
</td>
<td class="nump">14,265<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_EmployeeStockOwnershipPlanDetailsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_EmployeeStockOwnershipPlanDetailsLineItems</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_us-gaap_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contractual interest rate for funds borrowed, under the debt agreement.</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 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(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_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="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>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_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_EmployeeStockOwnershipPlanESOPPlanDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Description of the plan, including the basis for determining contributions, the employee groups covered, and the nature and effect of significant matters affecting comparability of information for all periods presented. For leveraged ESOPs and pension reversion ESOPs, the description generally includes the basis for releasing shares and how dividends on allocated and unallocated shares are used.</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 (a)<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_EmployeeStockOwnershipPlanESOPPlanDescription</td>
</tr>
<tr>
<td style="padding-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>61
<FILENAME>R49.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216638627296">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Employee Stock Ownership Plan (Details) - Schedule of ESOP Shares - USD ($)<br></strong></div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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>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">484,958<span></span>
</td>
<td class="nump">496,091<span></span>
</td>
</tr>
<tr class="re">
<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">233,645<span></span>
</td>
<td class="nump">256,293<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_EmployeeStockOwnershipPlanESOPSharesInESOP', window );">Total shares held by the ESOP</a></td>
<td class="nump">718,603<span></span>
</td>
<td class="nump">752,384<span></span>
</td>
</tr>
<tr class="re">
<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">$ 3,913,554<span></span>
</td>
<td class="nump">$ 3,649,612<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_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_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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>62
<FILENAME>R50.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216634439776">
<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">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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_esp_StockBasedCompensationDetailsLineItems', window );"><strong>Stock-Based Compensation (Details) [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_AllocatedShareBasedCompensationExpense', window );">Stock based compensation expense</a></td>
<td class="nump">$ 227,132<span></span>
</td>
<td class="nump">$ 176,696<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense', window );">Deferred tax benefit related to stock based compensation</a></td>
<td class="nump">4,501<span></span>
</td>
<td class="nump">$ 6,150<span></span>
</td>
</tr>
<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 costs</a></td>
<td class="nump">155,154<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">2 years<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_DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts', window );">Deferred tax benefit related to unrecognized compensation costs</a></td>
<td class="nump">$ 5,541<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">154,169<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod', window );">Shares cancelled (in Shares)</a></td>
<td class="nump">24,142<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue', window );">Aggregate intrinsic value of options exercised</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<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_TitleOfIndividualAxis=esp_NonEmployeeDirectorsMember', window );">Non employee directors [Member] | Maximum [Member] | 2017 Plan [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_esp_StockBasedCompensationDetailsLineItems', window );"><strong>Stock-Based Compensation (Details) [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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized', window );">Authorized shares under plan (in Shares)</a></td>
<td class="nump">133,000<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_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear', window );">Vesting period (in Shares)</a></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">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_srt_TitleOfIndividualAxis=esp_IndividualEmployeeMember', window );">Individual Employee [Member] | Maximum [Member] | 2017 Plan [Member]</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_esp_StockBasedCompensationDetailsLineItems', window );"><strong>Stock-Based Compensation (Details) [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear', window );">Vesting period (in Shares)</a></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_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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_StockBasedCompensationDetailsLineItems', window );"><strong>Stock-Based Compensation (Details) [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_AllocatedShareBasedCompensationExpense', window );">Stock based compensation expense</a></td>
<td class="nump">$ 21,432<span></span>
</td>
<td class="nump">$ 29,287<span></span>
</td>
</tr>
<tr class="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 costs</a></td>
<td class="nump">$ 26,388<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_CommonStockDividendsPerShareDeclared', window );">Common stock per share (in Dollars per share)</a></td>
<td class="nump">$ 0.2<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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_StockBasedCompensationDetailsLineItems', window );"><strong>Stock-Based Compensation (Details) [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_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions', window );">Unrecognized compensation costs</a></td>
<td class="nump">$ 128,766<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] | 2017 Plan [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_esp_StockBasedCompensationDetailsLineItems', window );"><strong>Stock-Based Compensation (Details) [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 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="nump">245,831<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod', window );">Shares cancelled (in Shares)</a></td>
<td class="nump">136,273<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 );">Share-Based Payment Arrangement, Option [Member] | 2017 Plan [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_esp_StockBasedCompensationDetailsLineItems', window );"><strong>Stock-Based Compensation (Details) [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_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>
</tr>
<tr class="re">
<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">2 years<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Shares remain available for grant (in Shares)</a></td>
<td class="nump">382,104<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_RestrictedStockPlanMember', window );">Restricted Stock Plan [Member] | 2007 Plan [Member]</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_esp_StockBasedCompensationDetailsLineItems', window );"><strong>Stock-Based Compensation (Details) [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 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="nump">50,500<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_DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax benefit attributable to unrecognized share-based compensation.</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_DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts</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_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 subject to option or award in a single fiscal year as outlined in the plan contract.</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_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear</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>instant</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_esp_StockBasedCompensationDetailsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_StockBasedCompensationDetailsLineItems</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_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_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_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_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax benefit for recognition of expense of award 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/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_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense</td>
</tr>
<tr>
<td style="padding-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_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_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_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_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_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_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_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>
<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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>63
<FILENAME>R51.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216641103520">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation (Details) - Schedule of Weighted Average Assumptions for Option Awards - $ / shares<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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_esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems', window );"><strong>Schedule of Fair Value Assumptions [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">0.03%<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate', window );">Expected stock price volatility</a></td>
<td class="nump">27.20%<span></span>
</td>
<td class="nump">25.60%<span></span>
</td>
</tr>
<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">2.71%<span></span>
</td>
<td class="nump">0.99%<span></span>
</td>
</tr>
<tr class="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 option life (in years)</a></td>
<td class="text">5 years 4 months 24 days<span></span>
</td>
<td class="text">5 years 4 months 24 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">$ 4.18<span></span>
</td>
<td class="nump">$ 3.74<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems</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_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>64
<FILENAME>R52.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216638341728">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation (Details) - Schedule of Stock Option Activity<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Jun. 30, 2023 </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_esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems', window );"><strong>Schedule of Stock Option Activity [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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Number of Shares Subject to Option, Beginning | shares</a></td>
<td class="nump">246,273<span></span>
</td>
</tr>
<tr class="re">
<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, Beginning | $ / shares</a></td>
<td class="nump">$ 20.89<span></span>
</td>
</tr>
<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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Weighted Average Remaining Contractual Term, Beginning</a></td>
<td class="text">6 years 8 months 23 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Number of Shares Subject to Option, Granted | shares</a></td>
<td class="nump">74,200<span></span>
</td>
</tr>
<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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Granted | $ / shares</a></td>
<td class="nump">$ 13.81<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm', window );">Weighted Average Remaining Contractual Term, Granted</a></td>
<td class="text">9 years 1 month 13 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_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Number of Shares Subject to Option, Exercised | shares</a></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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Exercised | $ / shares</a></td>
<td class="text"> <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_StockIssuedDuringPeriodSharesStockOptionExercised', window );">Weighted Average Remaining Contractual Term, Exercised</a></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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod', window );">Number of Shares Subject to Option, Forfeited or expired | shares</a></td>
<td class="num">(24,142)<span></span>
</td>
</tr>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Forfeited or expired | $ / shares</a></td>
<td class="nump">$ 20.46<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod', window );">Weighted Average Remaining Contractual Term, Forfeited or expired</a></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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Number of Shares Subject to Option, Ending | shares</a></td>
<td class="nump">296,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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Ending | $ / shares</a></td>
<td class="nump">$ 19.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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1', window );">Weighted Average Remaining Contractual Term, Ending</a></td>
<td class="text">6 years 5 months 26 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue', window );">Aggregate Intrinsic Value, Ending | $</a></td>
<td class="nump">$ 338,243<span></span>
</td>
</tr>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber', window );">Number of Shares Subject to Option, Vested or expected to vest | shares</a></td>
<td class="nump">283,745<span></span>
</td>
</tr>
<tr class="re">
<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="nump">$ 19.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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1', window );">Weighted Average Remaining Contractual Term, Vested or expected to vest</a></td>
<td class="text">6 years 4 months 17 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue', window );">Aggregate Intrinsic Value, Vested or expected to vest | $</a></td>
<td class="nump">$ 298,723<span></span>
</td>
</tr>
<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Number of Shares Subject to Option, Exercisable | shares</a></td>
<td class="nump">163,731<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Exercisable | $ / shares</a></td>
<td class="nump">$ 23.13<span></span>
</td>
</tr>
<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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2', window );">Weighted Average Remaining Contractual Term, Exercisable</a></td>
<td class="text">4 years 8 months 26 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue', window );">Aggregate Intrinsic Value, Exercisable | $</a></td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 contractual life of stock options under the Company's plans.</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm</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_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems</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_StockIssuedDuringPeriodSharesStockOptionExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, 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_StockIssuedDuringPeriodSharesStockOptionExercised</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_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_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 exercisable or convertible options. 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)(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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 exercisable or convertible options. 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)(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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="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_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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of exercisable stock options, 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)(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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2</td>
</tr>
<tr>
<td style="padding-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://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 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 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> -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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>65
<FILENAME>R53.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216634978128">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation (Details) - Schedule of Changes in Non-Vested Stock Options<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Jun. 30, 2023 </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_esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems', 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">104,175<span></span>
</td>
</tr>
<tr class="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">$ 2.92<span></span>
</td>
</tr>
<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">74,200<span></span>
</td>
</tr>
<tr class="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">$ 4.18<span></span>
</td>
</tr>
<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">(34,075)<span></span>
</td>
</tr>
<tr class="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">$ 1.59<span></span>
</td>
</tr>
<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">(11,700)<span></span>
</td>
</tr>
<tr class="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">$ 2.75<span></span>
</td>
</tr>
<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">132,600<span></span>
</td>
</tr>
<tr class="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">$ 3.98<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems</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_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>66
<FILENAME>R54.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216641263392">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Concentration of Credit Risk (Details) - Trade Accounts Receivable [Member] - Revenue Benchmark [Member]<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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_esp_ConcentrationofCreditRiskDetailsLineItems', window );"><strong>Concentration of Credit Risk (Details) [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_ConcentrationRiskPercentageOne', window );">Trade accounts receivable balance</a></td>
<td class="nump">81.00%<span></span>
</td>
<td class="nump">74.00%<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_ConcentrationRiskNumberOfCustomers', window );">Represented customers</a></td>
<td class="nump">5<span></span>
</td>
<td class="nump">4<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_ConcentrationRiskNumberOfCustomers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 customers specifically identified in disclosure of concentration risk.</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_ConcentrationRiskNumberOfCustomers</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_esp_ConcentrationRiskPercentageOne">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.</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_ConcentrationRiskPercentageOne</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>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_ConcentrationofCreditRiskDetailsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_ConcentrationofCreditRiskDetailsLineItems</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_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_TradeAccountsReceivableMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConcentrationRiskByTypeAxis=us-gaap_TradeAccountsReceivableMember</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_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember</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>67
<FILENAME>R55.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216644729408">
<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>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
</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_LossContingenciesByNatureOfContingencyAxis=us-gaap_StandbyLettersOfCreditMember', window );">Standby Letters of Credit [Member]</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_esp_CommitmentsandContingenciesDetailsLineItems', window );"><strong>Commitments and Contingencies (Details) [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_us-gaap_LossContingencyAccrualAtCarryingValue', window );">Contingent liabilities</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_CommitmentsandContingenciesDetailsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_CommitmentsandContingenciesDetailsLineItems</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_us-gaap_LossContingencyAccrualAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 loss contingency liability.</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 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483076/450-20-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/recommendedDisclosureRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483076/450-20-50-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_LossContingencyAccrualAtCarryingValue</td>
</tr>
<tr>
<td style="padding-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_LossContingenciesByNatureOfContingencyAxis=us-gaap_StandbyLettersOfCreditMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LossContingenciesByNatureOfContingencyAxis=us-gaap_StandbyLettersOfCreditMember</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>68
<FILENAME>R56.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216638901888">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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_StockholdersEquityNoteAbstract', window );"><strong>Stockholders' Equity Note [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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Purchase shares of common stock</a></td>
<td class="nump">130,656<span></span>
</td>
<td class="nump">246,273<span></span>
</td>
</tr>
<tr class="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 );">Cash dividends on common stock (in Dollars per share)</a></td>
<td class="nump">$ 0.2<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_DividendsCash', window );">Cash dividends (in Dollars)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <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_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_DividendsCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cash dividends declared for classes of stock, for example, but not limited to, common and preferred.</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/2147481071/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_DividendsCash</td>
</tr>
<tr>
<td style="padding-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_StockholdersEquityNoteAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StockholdersEquityNoteAbstract</td>
</tr>
<tr>
<td style="padding-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>69
<FILENAME>R57.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216634728672">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Stockholders' Equity (Details) - Schedule of Reserved Common Shares for Future Issuance - shares<br></strong></div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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_esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems', window );"><strong>Stockholders' Equity (Details) - Schedule of Reserved Common Shares for Future Issuance [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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Stock options outstanding</a></td>
<td class="nump">296,331<span></span>
</td>
<td class="nump">246,273<span></span>
</td>
</tr>
<tr class="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 );">Stock options available for issuance</a></td>
<td class="nump">154,169<span></span>
</td>
<td class="text">&#160;<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_CommonStockCapitalSharesReservedForFutureIssuance', window );">Number of common shares reserved</a></td>
<td class="nump">450,500<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_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems</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_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 number of common shares reserved for future issuance.</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 210<br> -SubTopic 10<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_CommonStockCapitalSharesReservedForFutureIssuance</td>
</tr>
<tr>
<td style="padding-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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>70
<FILENAME>R58.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216638735056">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity (Details) - Schedule of Reconciliation of the Numerators and Denominators of the Basic and Diluted Earnings Per Share Computations - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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_esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems', window );"><strong>Stockholders' Equity (Details) - Schedule of Reconciliation of the Numerators and Denominators of the Basic and Diluted Earnings Per Share Computations [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_NetIncomeLoss', window );">Net income (loss) (in Dollars)</a></td>
<td class="nump">$ 3,677,131<span></span>
</td>
<td class="nump">$ 1,265,127<span></span>
</td>
</tr>
<tr class="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>
</tr>
<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,702,633<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 );">Common shares issued to ESOP during the period</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_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased', window );">Unearned ESOP shares</a></td>
<td class="num">(256,293)<span></span>
</td>
<td class="num">(279,429)<span></span>
</td>
</tr>
<tr class="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 common shares issued during the period</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_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation', window );">Weighted average common shares purchased during the period</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_WeightedAverageNumberOfSharesContingentlyIssuable', window );">Weighted average ESOP shares earned during the period</a></td>
<td class="nump">8,516<span></span>
</td>
<td class="nump">8,700<span></span>
</td>
</tr>
<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_WeightedAverageNumberOfSharesOutstandingBasic', window );">Denominator for basic earnings per common shares &#8211; Weighted average common shares</a></td>
<td class="nump">2,454,856<span></span>
</td>
<td class="nump">2,431,904<span></span>
</td>
</tr>
<tr class="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>
</tr>
<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,702,633<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 );">Common shares issued to ESOP during the period</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_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased', window );">Unearned ESOP shares</a></td>
<td class="num">(256,293)<span></span>
</td>
<td class="num">(279,429)<span></span>
</td>
</tr>
<tr class="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 common shares issued during the period</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_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation', window );">Weighted average common shares purchased during the period</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_WeightedAverageNumberOfSharesContingentlyIssuable', window );">Weighted average ESOP shares earned during the period</a></td>
<td class="nump">8,516<span></span>
</td>
<td class="nump">8,700<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements', window );">Weighted average dilutive effect of stock options</a></td>
<td class="nump">16,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_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Denominator for diluted earnings per common shares &#8211; Weighted average common shares</a></td>
<td class="nump">2,471,016<span></span>
</td>
<td class="nump">2,431,904<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems</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_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 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 2: 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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 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 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 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 (f)<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 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 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 11: 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 12: 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 13: 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/2147480167/946-830-55-10<br><br>Reference 14: 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/2147483581/946-220-45-7<br><br>Reference 15: 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/2147483586/944-220-S99-1<br><br>Reference 16: 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 17: 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/2147483575/946-220-S99-1<br><br>Reference 18: 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/2147483575/946-220-S99-3<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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: 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 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)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<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 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 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)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<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)(5))<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 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 30: 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 (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: 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 32: 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 33: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: 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 35: 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 36: 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 37: 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 38: 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 39: 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/2147483589/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_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 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 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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_WeightedAverageNumberOfSharesContingentlyIssuable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 issuable for little or no cash consideration upon the satisfaction of certain conditions (contingently issuable shares) are considered outstanding common shares and included in the computation of basic Earnings Per Share as of the date that all necessary conditions have been satisfied (in essence, when issuance of the shares is no longer contingent). Outstanding common shares that are contingently returnable (that is, subject to recall) are treated in the same manner as contingently issuable shares. Contingently issuable shares include shares that (a) will be issued in the future upon the satisfaction of specified conditions, (b) have been placed in escrow and all or part must be returned if specified conditions are not met, or (c) have been issued but the holder must return all or part if specified conditions are not met. The number of contingently issuable shares is 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 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_WeightedAverageNumberOfSharesContingentlyIssuable</td>
</tr>
<tr>
<td style="padding-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>
<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>71
<FILENAME>R59.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216638920208">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Line of Credit (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Jun. 30, 2023 </div>
<div>USD ($)</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_esp_LineofCreditDetailsLineItems', window );"><strong>Line of Credit (Details) [Line Items]</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_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum amount of line of credit</a></td>
<td class="nump">$ 3,000,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_VariableRateAxis=esp_LondonInterbankOfferedRatesLIBORMember', window );">London Interbank Offered Rates (LIBOR) [Member]</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_esp_LineofCreditDetailsLineItems', window );"><strong>Line of Credit (Details) [Line Items]</strong></a></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_DebtInstrumentBasisSpreadOnVariableRate1', window );">Daily floating rate</a></td>
<td class="nump">2.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_LineofCreditDetailsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_LineofCreditDetailsLineItems</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_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 points added to the reference rate to compute the variable rate on the debt 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;">us-gaap_DebtInstrumentBasisSpreadOnVariableRate1</td>
</tr>
<tr>
<td style="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_LineOfCreditFacilityMaximumBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.</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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(b),22(b))<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_LineOfCreditFacilityMaximumBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-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_VariableRateAxis=esp_LondonInterbankOfferedRatesLIBORMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_VariableRateAxis=esp_LondonInterbankOfferedRatesLIBORMember</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>72
<FILENAME>R60.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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140216634598656">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Quarterly Financial Information (Unaudited) (Details) - Schedule of Quarterly Financial Information - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
</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_esp_QuarterlyFinancialInformationAxis=esp_FirstQuarterMember', window );">First Quarter [Member]</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_esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems', window );"><strong>Schedule of Quarterly Financial Information [Abstract]</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_Revenues', window );">Net sales</a></td>
<td class="nump">$ 8,635,795<span></span>
</td>
<td class="nump">$ 7,545,432<span></span>
</td>
</tr>
<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_GrossProfit', window );">Gross profit</a></td>
<td class="nump">1,812,142<span></span>
</td>
<td class="nump">1,353,098<span></span>
</td>
</tr>
<tr class="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="nump">$ 768,266<span></span>
</td>
<td class="nump">$ 306,061<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_NetIncomePerShareAbstract', window );"><strong>Net income per share -</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_EarningsPerShareBasic', window );">Basic (in Dollars per share)</a></td>
<td class="nump">$ 0.31<span></span>
</td>
<td class="nump">$ 0.13<span></span>
</td>
</tr>
<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_EarningsPerShareDiluted', window );">Diluted (in Dollars per share)</a></td>
<td class="nump">$ 0.31<span></span>
</td>
<td class="nump">$ 0.13<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_esp_QuarterlyFinancialInformationAxis=esp_SecondQuarterMember', window );">Second Quarter [Member]</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_esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems', window );"><strong>Schedule of Quarterly Financial Information [Abstract]</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_Revenues', window );">Net sales</a></td>
<td class="nump">$ 8,804,109<span></span>
</td>
<td class="nump">$ 7,458,050<span></span>
</td>
</tr>
<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_GrossProfit', window );">Gross profit</a></td>
<td class="nump">2,260,722<span></span>
</td>
<td class="nump">1,206,817<span></span>
</td>
</tr>
<tr class="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="nump">$ 1,146,042<span></span>
</td>
<td class="nump">$ 21,201<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_NetIncomePerShareAbstract', window );"><strong>Net income per share -</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_EarningsPerShareBasic', window );">Basic (in Dollars per share)</a></td>
<td class="nump">$ 0.47<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<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_EarningsPerShareDiluted', window );">Diluted (in Dollars per share)</a></td>
<td class="nump">$ 0.47<span></span>
</td>
<td class="nump">$ 0.01<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_esp_QuarterlyFinancialInformationAxis=esp_ThirdQuarterMember', window );">Third Quarter [Member]</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_esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems', window );"><strong>Schedule of Quarterly Financial Information [Abstract]</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_Revenues', window );">Net sales</a></td>
<td class="nump">$ 9,809,616<span></span>
</td>
<td class="nump">$ 8,620,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_GrossProfit', window );">Gross profit</a></td>
<td class="nump">1,973,429<span></span>
</td>
<td class="nump">1,734,880<span></span>
</td>
</tr>
<tr class="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="nump">$ 867,288<span></span>
</td>
<td class="nump">$ 661,359<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_NetIncomePerShareAbstract', window );"><strong>Net income per share -</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_EarningsPerShareBasic', window );">Basic (in Dollars per share)</a></td>
<td class="nump">$ 0.35<span></span>
</td>
<td class="nump">$ 0.27<span></span>
</td>
</tr>
<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_EarningsPerShareDiluted', window );">Diluted (in Dollars per share)</a></td>
<td class="nump">$ 0.35<span></span>
</td>
<td class="nump">$ 0.27<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_esp_QuarterlyFinancialInformationAxis=esp_FourthQuarterMember', window );">Fourth Quarter [Member]</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_esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems', window );"><strong>Schedule of Quarterly Financial Information [Abstract]</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_Revenues', window );">Net sales</a></td>
<td class="nump">$ 8,342,803<span></span>
</td>
<td class="nump">$ 8,481,243<span></span>
</td>
</tr>
<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_GrossProfit', window );">Gross profit</a></td>
<td class="nump">2,004,245<span></span>
</td>
<td class="nump">1,177,363<span></span>
</td>
</tr>
<tr class="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="nump">$ 895,535<span></span>
</td>
<td class="nump">$ 276,506<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_esp_NetIncomePerShareAbstract', window );"><strong>Net income per share -</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_EarningsPerShareBasic', window );">Basic (in Dollars per share)</a></td>
<td class="nump">$ 0.37<span></span>
</td>
<td class="nump">$ 0.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_EarningsPerShareDiluted', window );">Diluted (in Dollars per share)</a></td>
<td class="nump">$ 0.36<span></span>
</td>
<td class="nump">$ 0.11<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_esp_NetIncomePerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_NetIncomePerShareAbstract</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_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems</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_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 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: 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 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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 14: 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/2147483589/942-220-S99-1<br><br>Reference 15: 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/2147483586/944-220-S99-1<br><br>Reference 16: 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 17: 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 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: 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 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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/2147483589/942-220-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 15: 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 16: 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/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 2: 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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 5: http://www.xbrl.org/2003/role/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 6: 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 7: 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 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)(iv))<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)(5))<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 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 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)(iii)(A))<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)(B))<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)(iv))<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)(5))<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 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 16: 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 (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 17: 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 18: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 19: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<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_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_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 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 2: 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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 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 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 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 (f)<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 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 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 11: 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 12: 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 13: 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/2147480167/946-830-55-10<br><br>Reference 14: 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/2147483581/946-220-45-7<br><br>Reference 15: 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/2147483586/944-220-S99-1<br><br>Reference 16: 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 17: 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/2147483575/946-220-S99-1<br><br>Reference 18: 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/2147483575/946-220-S99-3<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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: 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 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)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<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 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 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)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<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)(5))<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 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 30: 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 (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: 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 32: 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 33: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: 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 35: 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 36: 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 37: 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 38: 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 39: 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/2147483589/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_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/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 2: 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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 5: 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 6: 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 7: 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 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)(iv))<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)(5))<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 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 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)(iii)(A))<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)(B))<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)(iv))<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)(5))<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 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 16: 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 17: 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 18: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 19: 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 20: 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 21: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<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 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 23: 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/2147479557/942-235-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_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_esp_QuarterlyFinancialInformationAxis=esp_FirstQuarterMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_QuarterlyFinancialInformationAxis=esp_FirstQuarterMember</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_esp_QuarterlyFinancialInformationAxis=esp_SecondQuarterMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_QuarterlyFinancialInformationAxis=esp_SecondQuarterMember</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_esp_QuarterlyFinancialInformationAxis=esp_ThirdQuarterMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_QuarterlyFinancialInformationAxis=esp_ThirdQuarterMember</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_esp_QuarterlyFinancialInformationAxis=esp_FourthQuarterMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">esp_QuarterlyFinancialInformationAxis=esp_FourthQuarterMember</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>73
<FILENAME>esp-20230630_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/2023"
  xmlns:esp="http://espey.com/20230630"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2023"
  xmlns:us-gaap="http://fasb.org/us-gaap/2023"
  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-20230630.xsd" xlink:type="simple"/>
    <context id="c0">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="c2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <instant>2023-09-19</instant>
        </period>
    </context>
    <context id="c3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="c5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c6">
        <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>2021-06-30</instant>
        </period>
    </context>
    <context id="c7">
        <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>2021-06-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:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-06-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:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-06-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:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-06-30</instant>
        </period>
    </context>
    <context id="c11">
        <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>2021-06-30</instant>
        </period>
    </context>
    <context id="c12">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <instant>2021-06-30</instant>
        </period>
    </context>
    <context id="c13">
        <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>2021-07-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c14">
        <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>2021-07-01</startDate>
            <endDate>2022-06-30</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:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c16">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">esp:UnearnedESOPSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2022-06-30</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:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="c18">
        <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>2022-06-30</instant>
        </period>
    </context>
    <context id="c19">
        <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>2022-06-30</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:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</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:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="c22">
        <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>2022-06-30</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:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c24">
        <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>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c25">
        <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>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c26">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">esp:UnearnedESOPSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c27">
        <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="c28">
        <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="c29">
        <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="c30">
        <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="c31">
        <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="c32">
        <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="c33">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c34">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c35">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c36">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c37">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c38">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c39">
        <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>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c40">
        <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>2021-07-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c41">
        <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>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c42">
        <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>2021-07-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c43">
        <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>2023-06-30</instant>
        </period>
    </context>
    <context id="c44">
        <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>2022-06-30</instant>
        </period>
    </context>
    <context id="c45">
        <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>2023-06-30</instant>
        </period>
    </context>
    <context id="c46">
        <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>2023-06-30</instant>
        </period>
    </context>
    <context id="c47">
        <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>2023-06-30</instant>
        </period>
    </context>
    <context id="c48">
        <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>2023-06-30</instant>
        </period>
    </context>
    <context id="c49">
        <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>2022-06-30</instant>
        </period>
    </context>
    <context id="c50">
        <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>2022-06-30</instant>
        </period>
    </context>
    <context id="c51">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="c52">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c53">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="c54">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
        </entity>
        <period>
            <startDate>2023-09-01</startDate>
            <endDate>2023-09-19</endDate>
        </period>
    </context>
    <context id="c55">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</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:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="c57">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</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:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="c59">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c60">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="c61">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c62">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c63">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c64">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c65">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">esp:GeographicConcentrationRisk1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c66">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">esp:GeographicConcentrationRisk1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c67">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis">esp:EmployeeStockOwnershipPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c68">
        <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>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c69">
        <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>2021-07-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c70">
        <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>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </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>2021-07-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c72">
        <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>2023-06-30</instant>
        </period>
    </context>
    <context id="c73">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">esp:NonQualifiedStockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c74">
        <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>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c75">
        <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>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c76">
        <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>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c77">
        <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>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c78">
        <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>2023-06-30</instant>
        </period>
    </context>
    <context id="c79">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">esp:IncentiveStockOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">esp:TwoThousandSeventeenPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c80">
        <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>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c81">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:TradeAccountsReceivableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c82">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:TradeAccountsReceivableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c83">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LossContingenciesByNatureOfContingencyAxis">us-gaap:StandbyLettersOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c84">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LossContingenciesByNatureOfContingencyAxis">us-gaap:StandbyLettersOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="c85">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">esp:LondonInterbankOfferedRatesLIBORMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c86">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="esp:QuarterlyFinancialInformationAxis">esp:FirstQuarterMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c87">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="esp:QuarterlyFinancialInformationAxis">esp:SecondQuarterMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c88">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="esp:QuarterlyFinancialInformationAxis">esp:ThirdQuarterMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c89">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="esp:QuarterlyFinancialInformationAxis">esp:FourthQuarterMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c90">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="esp:QuarterlyFinancialInformationAxis">esp:FirstQuarterMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c91">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="esp:QuarterlyFinancialInformationAxis">esp:SecondQuarterMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c92">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="esp:QuarterlyFinancialInformationAxis">esp:ThirdQuarterMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c93">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000033533</identifier>
            <segment>
                <xbrldi:explicitMember dimension="esp:QuarterlyFinancialInformationAxis">esp:FourthQuarterMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <unit id="usd">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="shares">
        <measure>shares</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">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport contextRef="c0">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate contextRef="c0">2023-06-30</dei:DocumentPeriodEndDate>
    <dei:CurrentFiscalYearEndDate contextRef="c0">--06-30</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus contextRef="c0">2023</dei:DocumentFiscalYearFocus>
    <dei:DocumentTransitionReport contextRef="c0">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber contextRef="c0">1-4383</dei:EntityFileNumber>
    <dei:EntityRegistrantName contextRef="c0">ESPEY MFG. &amp; ELECTRONICS CORP.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode contextRef="c0">NY</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber contextRef="c0">14-1387171</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="c0">233 Ballston Avenue</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="c0">Saratoga Springs</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="c0">NY</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="c0">12866</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="c0">518</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="c0">584-4100</dei:LocalPhoneNumber>
    <dei:Security12bTitle contextRef="c0">Common Stock $.33-1/3 par value</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="c0">ESP</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="c0">NYSE</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer contextRef="c0">No</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers contextRef="c0">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus contextRef="c0">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent contextRef="c0">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory contextRef="c0">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness contextRef="c0">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany contextRef="c0">false</dei:EntityEmergingGrowthCompany>
    <dei:IcfrAuditorAttestationFlag contextRef="c0">false</dei:IcfrAuditorAttestationFlag>
    <dei:DocumentFinStmtErrorCorrectionFlag contextRef="c0">false</dei:DocumentFinStmtErrorCorrectionFlag>
    <dei:EntityShellCompany contextRef="c0">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat contextRef="c1" decimals="0" unitRef="usd">27145853</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding contextRef="c2" decimals="INF" unitRef="shares">2706633</dei:EntityCommonStockSharesOutstanding>
    <dei:AuditorFirmId contextRef="c0">317</dei:AuditorFirmId>
    <dei:AuditorName contextRef="c0">Freed Maxick CPAs, P.C.</dei:AuditorName>
    <dei:AuditorLocation contextRef="c0">Buffalo, New York</dei:AuditorLocation>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c3" decimals="0" unitRef="usd">2748755</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c4" decimals="0" unitRef="usd">8104060</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c3" decimals="0" unitRef="usd">11964673</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c4" decimals="0" unitRef="usd">3708779</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="c3" decimals="0" unitRef="usd">3000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="c4" decimals="0" unitRef="usd">3000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="c3" decimals="0" unitRef="usd">5755282</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="c4" decimals="0" unitRef="usd">5733174</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:IncomeTaxesReceivable contextRef="c3" decimals="0" unitRef="usd">35666</us-gaap:IncomeTaxesReceivable>
    <us-gaap:InventoryRawMaterials contextRef="c3" decimals="0" unitRef="usd">1889702</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryRawMaterials contextRef="c4" decimals="0" unitRef="usd">2037483</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryWorkInProcess contextRef="c3" decimals="0" unitRef="usd">681300</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryWorkInProcess contextRef="c4" decimals="0" unitRef="usd">315547</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryForLongTermContractsOrPrograms contextRef="c3" decimals="0" unitRef="usd">17318579</us-gaap:InventoryForLongTermContractsOrPrograms>
    <us-gaap:InventoryForLongTermContractsOrPrograms contextRef="c4" decimals="0" unitRef="usd">16207419</us-gaap:InventoryForLongTermContractsOrPrograms>
    <us-gaap:InventoryNet contextRef="c3" decimals="0" unitRef="usd">19889581</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="c4" decimals="0" unitRef="usd">18560449</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent contextRef="c3" decimals="0" unitRef="usd">4282477</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent contextRef="c4" decimals="0" unitRef="usd">992774</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent contextRef="c3" decimals="0" unitRef="usd">44676434</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent contextRef="c4" decimals="0" unitRef="usd">37099236</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c3" decimals="0" unitRef="usd">2825089</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c4" decimals="0" unitRef="usd">2797993</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Assets contextRef="c3" decimals="0" unitRef="usd">47501523</us-gaap:Assets>
    <us-gaap:Assets contextRef="c4" decimals="0" unitRef="usd">39897229</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent contextRef="c3" decimals="0" unitRef="usd">1212375</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent contextRef="c4" decimals="0" unitRef="usd">2079177</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedSalariesCurrent contextRef="c3" decimals="0" unitRef="usd">890748</us-gaap:AccruedSalariesCurrent>
    <us-gaap:AccruedSalariesCurrent contextRef="c4" decimals="0" unitRef="usd">627187</us-gaap:AccruedSalariesCurrent>
    <us-gaap:AccruedVacationCurrent contextRef="c3" decimals="0" unitRef="usd">685188</us-gaap:AccruedVacationCurrent>
    <us-gaap:AccruedVacationCurrent contextRef="c4" decimals="0" unitRef="usd">666380</us-gaap:AccruedVacationCurrent>
    <us-gaap:OtherEmployeeRelatedLiabilitiesCurrent contextRef="c3" decimals="0" unitRef="usd">547747</us-gaap:OtherEmployeeRelatedLiabilitiesCurrent>
    <us-gaap:OtherEmployeeRelatedLiabilitiesCurrent contextRef="c4" decimals="0" unitRef="usd">752554</us-gaap:OtherEmployeeRelatedLiabilitiesCurrent>
    <us-gaap:AccruedPayrollTaxesCurrent contextRef="c3" decimals="0" unitRef="usd">66042</us-gaap:AccruedPayrollTaxesCurrent>
    <us-gaap:AccruedPayrollTaxesCurrent contextRef="c4" decimals="0" unitRef="usd">55292</us-gaap:AccruedPayrollTaxesCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent contextRef="c3" decimals="0" unitRef="usd">8081838</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent contextRef="c4" decimals="0" unitRef="usd">3384474</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:TaxesPayableCurrent contextRef="c4" decimals="0" unitRef="usd">54722</us-gaap:TaxesPayableCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="c3" decimals="0" unitRef="usd">11483938</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="c4" decimals="0" unitRef="usd">7619786</us-gaap:LiabilitiesCurrent>
    <esp:DeferredTaxLiability contextRef="c3" decimals="0" unitRef="usd">137827</esp:DeferredTaxLiability>
    <esp:DeferredTaxLiability contextRef="c4" decimals="0" unitRef="usd">177829</esp:DeferredTaxLiability>
    <us-gaap:Liabilities contextRef="c3" decimals="0" unitRef="usd">11621765</us-gaap:Liabilities>
    <us-gaap:Liabilities contextRef="c4" decimals="0" unitRef="usd">7797615</us-gaap:Liabilities>
    <us-gaap:CommonStockParOrStatedValuePerShare contextRef="c3" decimals="2" unitRef="usdPershares">0.33</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare contextRef="c4" decimals="2" unitRef="usdPershares">0.33</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized contextRef="c3" decimals="INF" unitRef="shares">10000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized contextRef="c4" decimals="INF" unitRef="shares">10000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued contextRef="c3" decimals="INF" unitRef="shares">3129874</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued contextRef="c4" decimals="INF" unitRef="shares">3129874</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding contextRef="c3" decimals="INF" unitRef="shares">2702633</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding contextRef="c4" decimals="INF" unitRef="shares">2702633</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesHeldInEmployeeTrustShares contextRef="c3" decimals="INF" unitRef="shares">233645</us-gaap:CommonStockSharesHeldInEmployeeTrustShares>
    <us-gaap:CommonStockSharesHeldInEmployeeTrustShares contextRef="c4" decimals="INF" unitRef="shares">256293</us-gaap:CommonStockSharesHeldInEmployeeTrustShares>
    <us-gaap:CommonStockValue contextRef="c3" decimals="0" unitRef="usd">1043291</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue contextRef="c4" decimals="0" unitRef="usd">1043291</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock contextRef="c3" decimals="0" unitRef="usd">23283245</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock contextRef="c4" decimals="0" unitRef="usd">23104693</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="c3" decimals="0" unitRef="usd">-2429</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="c4" decimals="0" unitRef="usd">-1932</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="c3" decimals="0" unitRef="usd">21867720</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="c4" decimals="0" unitRef="usd">18679857</us-gaap:RetainedEarningsAccumulatedDeficit>
    <esp:TotalStockholdersEquityBeforyEsopAndTreasuryStock contextRef="c3" decimals="0" unitRef="usd">46191827</esp:TotalStockholdersEquityBeforyEsopAndTreasuryStock>
    <esp:TotalStockholdersEquityBeforyEsopAndTreasuryStock contextRef="c4" decimals="0" unitRef="usd">42825909</esp:TotalStockholdersEquityBeforyEsopAndTreasuryStock>
    <esp:UnearnedEsopSharesCost contextRef="c3" decimals="0" unitRef="usd">4273378</esp:UnearnedEsopSharesCost>
    <esp:UnearnedEsopSharesCost contextRef="c4" decimals="0" unitRef="usd">4687604</esp:UnearnedEsopSharesCost>
    <us-gaap:TreasuryStockCommonShares contextRef="c3" decimals="INF" unitRef="shares">427241</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockCommonShares contextRef="c4" decimals="INF" unitRef="shares">427241</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockValue contextRef="c3" decimals="0" unitRef="usd">6038691</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue contextRef="c4" decimals="0" unitRef="usd">6038691</us-gaap:TreasuryStockValue>
    <us-gaap:StockholdersEquity contextRef="c3" decimals="0" unitRef="usd">35879758</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c4" decimals="0" unitRef="usd">32099614</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="c3" decimals="0" unitRef="usd">47501523</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="c4" decimals="0" unitRef="usd">39897229</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:Revenues contextRef="c0" decimals="0" unitRef="usd">35592323</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c5" decimals="0" unitRef="usd">32104774</us-gaap:Revenues>
    <us-gaap:CostOfRevenue contextRef="c0" decimals="0" unitRef="usd">27541785</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue contextRef="c5" decimals="0" unitRef="usd">26632616</us-gaap:CostOfRevenue>
    <us-gaap:GrossProfit contextRef="c0" decimals="0" unitRef="usd">8050538</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c5" decimals="0" unitRef="usd">5472158</us-gaap:GrossProfit>
    <us-gaap:SellingGeneralAndAdministrativeExpense contextRef="c0" decimals="0" unitRef="usd">3750524</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense contextRef="c5" decimals="0" unitRef="usd">3942991</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:OperatingIncomeLoss contextRef="c0" decimals="0" unitRef="usd">4300014</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss contextRef="c5" decimals="0" unitRef="usd">1529167</us-gaap:OperatingIncomeLoss>
    <us-gaap:InvestmentIncomeInterestAndDividend contextRef="c0" decimals="0" unitRef="usd">359617</us-gaap:InvestmentIncomeInterestAndDividend>
    <us-gaap:InvestmentIncomeInterestAndDividend contextRef="c5" decimals="0" unitRef="usd">12153</us-gaap:InvestmentIncomeInterestAndDividend>
    <us-gaap:OtherNonoperatingIncome contextRef="c0" decimals="0" unitRef="usd">46836</us-gaap:OtherNonoperatingIncome>
    <us-gaap:OtherNonoperatingIncome contextRef="c5" decimals="0" unitRef="usd">51761</us-gaap:OtherNonoperatingIncome>
    <us-gaap:NonoperatingIncomeExpense contextRef="c0" decimals="0" unitRef="usd">406453</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense contextRef="c5" decimals="0" unitRef="usd">63914</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossAttributableToParent contextRef="c0" decimals="0" unitRef="usd">4706467</us-gaap:IncomeLossAttributableToParent>
    <us-gaap:IncomeLossAttributableToParent contextRef="c5" decimals="0" unitRef="usd">1593081</us-gaap:IncomeLossAttributableToParent>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c0" decimals="0" unitRef="usd">1029336</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c5" decimals="0" unitRef="usd">327954</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss contextRef="c0" decimals="0" unitRef="usd">3677131</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c5" decimals="0" unitRef="usd">1265127</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="c0" decimals="0" unitRef="usd">-497</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="c5" decimals="0" unitRef="usd">429</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c0" decimals="0" unitRef="usd">3676634</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c5" decimals="0" unitRef="usd">1265556</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:EarningsPerShareBasic contextRef="c0" decimals="2" unitRef="usdPershares">1.5</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic contextRef="c5" decimals="2" unitRef="usdPershares">0.52</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted contextRef="c0" decimals="2" unitRef="usdPershares">1.49</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted contextRef="c5" decimals="2" unitRef="usdPershares">0.52</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="c0" decimals="0" unitRef="shares">2454856</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="c5" decimals="0" unitRef="shares">2431904</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c0" decimals="0" unitRef="shares">2471016</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c5" decimals="0" unitRef="shares">2431904</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding contextRef="c6" decimals="INF" unitRef="shares">2702633</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c6" decimals="0" unitRef="usd">1043291</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c7" decimals="0" unitRef="usd">23026096</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c8" decimals="0" unitRef="usd">-2361</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c9" decimals="0" unitRef="usd">17414730</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding contextRef="c10" decimals="INF" unitRef="shares">427241</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c10" decimals="0" unitRef="usd">-6038691</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c11" decimals="0" unitRef="usd">-5110770</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c12" decimals="0" unitRef="usd">30332295</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss contextRef="c13" decimals="0" unitRef="usd">1265127</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c5" decimals="0" unitRef="usd">1265127</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax contextRef="c5" decimals="0" unitRef="usd">90</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax contextRef="c14" decimals="0" unitRef="usd">429</us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax contextRef="c5" decimals="0" unitRef="usd">429</us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c5" decimals="0" unitRef="usd">1265556</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationGross contextRef="c15" decimals="0" unitRef="usd">176696</us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationGross>
    <us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationGross contextRef="c5" decimals="0" unitRef="usd">176696</us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan contextRef="c15" decimals="0" unitRef="usd">-98099</us-gaap:StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan contextRef="c16" decimals="0" unitRef="usd">423166</us-gaap:StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan contextRef="c5" decimals="0" unitRef="usd">325067</us-gaap:StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan>
    <us-gaap:CommonStockSharesOutstanding contextRef="c17" decimals="INF" unitRef="shares">2702633</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c17" decimals="0" unitRef="usd">1043291</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c18" decimals="0" unitRef="usd">23104693</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c19" decimals="0" unitRef="usd">-1932</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c20" decimals="0" unitRef="usd">18679857</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding contextRef="c21" decimals="INF" unitRef="shares">427241</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c21" decimals="0" unitRef="usd">-6038691</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c22" decimals="0" unitRef="usd">-4687604</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c4" decimals="0" unitRef="usd">32099614</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding contextRef="c17" decimals="INF" unitRef="shares">2702633</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c17" decimals="0" unitRef="usd">1043291</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c18" decimals="0" unitRef="usd">23104693</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c19" decimals="0" unitRef="usd">-1932</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c20" decimals="0" unitRef="usd">18679857</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding contextRef="c21" decimals="INF" unitRef="shares">427241</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c21" decimals="0" unitRef="usd">-6038691</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c22" decimals="0" unitRef="usd">-4687604</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c4" decimals="0" unitRef="usd">32099614</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss contextRef="c23" decimals="0" unitRef="usd">3677131</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c0" decimals="0" unitRef="usd">3677131</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax contextRef="c0" decimals="0" unitRef="usd">104</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax contextRef="c24" decimals="0" unitRef="usd">-497</us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax contextRef="c0" decimals="0" unitRef="usd">-497</us-gaap:OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c0" decimals="0" unitRef="usd">3676634</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationGross contextRef="c25" decimals="0" unitRef="usd">227132</us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationGross>
    <us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationGross contextRef="c0" decimals="0" unitRef="usd">227132</us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationGross>
    <us-gaap:CommonStockDividendsPerShareCashPaid contextRef="c0" decimals="2" unitRef="usdPershares">0.2</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:DividendsCommonStockCash contextRef="c23" decimals="0" unitRef="usd">489268</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash contextRef="c0" decimals="0" unitRef="usd">489268</us-gaap:DividendsCommonStockCash>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan contextRef="c25" decimals="0" unitRef="usd">-48580</us-gaap:StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan contextRef="c26" decimals="0" unitRef="usd">414226</us-gaap:StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan contextRef="c0" decimals="0" unitRef="usd">365646</us-gaap:StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan>
    <us-gaap:CommonStockSharesOutstanding contextRef="c27" decimals="INF" unitRef="shares">2702633</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c27" decimals="0" unitRef="usd">1043291</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c28" decimals="0" unitRef="usd">23283245</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c29" decimals="0" unitRef="usd">-2429</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c30" decimals="0" unitRef="usd">21867720</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding contextRef="c31" decimals="INF" unitRef="shares">427241</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c31" decimals="0" unitRef="usd">-6038691</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c32" decimals="0" unitRef="usd">-4273378</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c3" decimals="0" unitRef="usd">35879758</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss contextRef="c0" decimals="0" unitRef="usd">3677131</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c5" decimals="0" unitRef="usd">1265127</us-gaap:NetIncomeLoss>
    <us-gaap:ShareBasedCompensation contextRef="c0" decimals="0" unitRef="usd">227132</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation contextRef="c5" decimals="0" unitRef="usd">176696</us-gaap:ShareBasedCompensation>
    <us-gaap:Depreciation contextRef="c0" decimals="0" unitRef="usd">484920</us-gaap:Depreciation>
    <us-gaap:Depreciation contextRef="c5" decimals="0" unitRef="usd">494635</us-gaap:Depreciation>
    <us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense contextRef="c0" decimals="0" unitRef="usd">365646</us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense>
    <us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense contextRef="c5" decimals="0" unitRef="usd">325067</us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense>
    <us-gaap:DeferredIncomeTaxExpenseBenefit contextRef="c0" decimals="0" unitRef="usd">-40002</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit contextRef="c5" decimals="0" unitRef="usd">9271</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:GainLossOnDispositionOfAssets contextRef="c0" decimals="0" unitRef="usd">2500</us-gaap:GainLossOnDispositionOfAssets>
    <us-gaap:GainLossOnDispositionOfAssets contextRef="c5" decimals="0" unitRef="usd">119</us-gaap:GainLossOnDispositionOfAssets>
    <us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="c0" decimals="0" unitRef="usd">22108</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="c5" decimals="0" unitRef="usd">379393</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable contextRef="c0" decimals="0" unitRef="usd">35666</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable contextRef="c5" decimals="0" unitRef="usd">-249602</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInInventories contextRef="c0" decimals="0" unitRef="usd">1329132</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories contextRef="c5" decimals="0" unitRef="usd">-231443</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets contextRef="c0" decimals="0" unitRef="usd">3289703</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets contextRef="c5" decimals="0" unitRef="usd">292477</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable contextRef="c0" decimals="0" unitRef="usd">-866802</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable contextRef="c5" decimals="0" unitRef="usd">-638996</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccruedSalaries contextRef="c0" decimals="0" unitRef="usd">263561</us-gaap:IncreaseDecreaseInAccruedSalaries>
    <us-gaap:IncreaseDecreaseInAccruedSalaries contextRef="c5" decimals="0" unitRef="usd">151520</us-gaap:IncreaseDecreaseInAccruedSalaries>
    <esp:IncreaseDecreaseInVacationAccrual contextRef="c0" decimals="0" unitRef="usd">18808</esp:IncreaseDecreaseInVacationAccrual>
    <esp:IncreaseDecreaseInVacationAccrual contextRef="c5" decimals="0" unitRef="usd">-6231</esp:IncreaseDecreaseInVacationAccrual>
    <us-gaap:IncreaseDecreaseInOtherAccruedLiabilities contextRef="c0" decimals="0" unitRef="usd">-204807</us-gaap:IncreaseDecreaseInOtherAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherAccruedLiabilities contextRef="c5" decimals="0" unitRef="usd">626540</us-gaap:IncreaseDecreaseInOtherAccruedLiabilities>
    <esp:IncreasedecreaseInPayrollAndOtherTaxesWithheld contextRef="c0" decimals="0" unitRef="usd">10750</esp:IncreasedecreaseInPayrollAndOtherTaxesWithheld>
    <esp:IncreasedecreaseInPayrollAndOtherTaxesWithheld contextRef="c5" decimals="0" unitRef="usd">-354589</esp:IncreasedecreaseInPayrollAndOtherTaxesWithheld>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability contextRef="c0" decimals="0" unitRef="usd">4697364</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability contextRef="c5" decimals="0" unitRef="usd">306869</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable contextRef="c0" decimals="0" unitRef="usd">-54722</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable contextRef="c5" decimals="0" unitRef="usd">54722</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="c0" decimals="0" unitRef="usd">3899870</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="c5" decimals="0" unitRef="usd">2219687</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="c0" decimals="0" unitRef="usd">512016</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="c5" decimals="0" unitRef="usd">303561</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfOtherProductiveAssets contextRef="c0" decimals="0" unitRef="usd">2500</us-gaap:ProceedsFromSaleOfOtherProductiveAssets>
    <us-gaap:ProceedsFromSaleOfOtherProductiveAssets contextRef="c5" decimals="0" unitRef="usd">2000</us-gaap:ProceedsFromSaleOfOtherProductiveAssets>
    <us-gaap:PaymentsToAcquireInvestments contextRef="c0" decimals="0" unitRef="usd">15902014</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:PaymentsToAcquireInvestments contextRef="c5" decimals="0" unitRef="usd">4237778</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities contextRef="c0" decimals="0" unitRef="usd">7645623</us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities>
    <us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities contextRef="c5" decimals="0" unitRef="usd">3621000</us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="c0" decimals="0" unitRef="usd">-8765907</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="c5" decimals="0" unitRef="usd">-918339</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:PaymentsOfDividendsCommonStock contextRef="c0" decimals="0" unitRef="usd">489268</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="c0" decimals="0" unitRef="usd">-489268</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect contextRef="c0" decimals="0" unitRef="usd">-5355305</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect contextRef="c5" decimals="0" unitRef="usd">1301348</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c4" decimals="0" unitRef="usd">8104060</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c12" decimals="0" unitRef="usd">6802712</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c3" decimals="0" unitRef="usd">2748755</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c4" decimals="0" unitRef="usd">8104060</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:IncomeTaxesPaid contextRef="c0" decimals="0" unitRef="usd">1159595</us-gaap:IncomeTaxesPaid>
    <us-gaap:IncomeTaxesPaid contextRef="c5" decimals="0" unitRef="usd">14365</us-gaap:IncomeTaxesPaid>
    <us-gaap:NatureOfOperations contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt 0.75in; text-align: justify; text-indent: -0.75in"&gt;Note 1. Nature
of Operations&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 12pt; text-align: justify"&gt;Espey Mfg. &amp;amp; Electronics Corp. (the Company)
is a manufacturer of electronic equipment used primarily in military and industrial applications. The principal markets for the Company's
products are companies that provide electronic support to both military and industrial applications across the United States and at some
international locations.&lt;/p&gt;</us-gaap:NatureOfOperations>
    <us-gaap:SignificantAccountingPoliciesTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt"&gt;Note 2. Summary of Significant Accounting Policies&lt;/p&gt;

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

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;The majority of our sales are generated from military
contracts from defense companies, the 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.&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;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.&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;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.&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;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.&lt;/p&gt;

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

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

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;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 and reduce inventory balances based on this analysis.&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Inventory relating to contracts in process and
work in process is valued at 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&#x2019;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.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;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.&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0"&gt;&#160;&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Contract Liabilities&lt;/p&gt;

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

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

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Depreciation of plant and equipment is computed
on a straight-line basis over the estimated useful lives of the assets.&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Estimated useful lives of depreciable assets
are as follows:&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 80%; border-collapse: collapse; margin-left: auto; margin-right: auto;"&gt;
  &lt;tr style="vertical-align: top; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 50%; padding-bottom: 6pt"&gt;Buildings and improvements&lt;/td&gt;
    &lt;td style="width: 50%; padding-bottom: 6pt; text-align: center"&gt;10 &#x2013; 50 years&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: top; "&gt;
    &lt;td style="padding-bottom: 6pt"&gt;Machinery and equipment&lt;/td&gt;
    &lt;td style="padding-bottom: 6pt; text-align: center"&gt;3 &#x2013; 20 years&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: top; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 6pt"&gt;Furniture and fixtures&lt;/td&gt;
    &lt;td style="padding-bottom: 6pt; text-align: center"&gt;7 &#x2013; 10 years&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;
&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: center"&gt;&#160;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;The Company follows the provisions of Accounting
Standards Codification (&#x201c;ASC&#x201d;) Topic 740-10, "Accounting for Income Taxes."&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Under the provisions of ASC 740-10, deferred
tax assets and liabilities are recognized for the future tax consequences attributable to differences between the financial statement
carrying amounts of existing assets and liabilities and their respective tax bases.&#160; Deferred tax assets and liabilities are measured
using enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to be recovered
or settled.&#160; The effect on deferred taxes and liabilities of a change in tax rates is recognized in earnings in the period that includes
the enactment date.&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Cash and cash equivalents consist of cash
and money market funds. The Company considers all highly liquid investments with original maturities
of three months or less to be cash equivalents.&#160;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;The Company accounts for its investments in
debt securities in accordance with ASC 320-10-25, &#x201c;Accounting for Certain Investments in Debt and Equity Securities.&#x201d;&#160;
Investments in debt securities at June 30, 2023 consists of municipal bonds, and treasury bills, and at June 30, 2022, consisted of municipal
bonds.&#160; The Company classifies investments in debt securities as available-for-sale. Unrealized holding gains and losses, net of
related tax effect, on available-for-sale debt securities are excluded from earnings and are reported as a separate component of stockholders&#x2019;
equity until realized.&#160; Realized gains and losses for debt securities classified as available-for-sale are included in earnings and
are determined using the specific identification method.&#160; Interest income is recognized when earned.&#160; Fair values are based
on quoted market prices available as of the balance sheet date, and are therefore considered a Level 1 valuation.&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Certificates of deposit held for investment
with an original maturity greater than three months are carried at amortized cost and reported as short-term investments on the balance
sheets. The type of certificates of deposit that the Company invests in are not considered debt securities under Financial Accounting
Standards Board ("FASB") Accounting Standards Codification (&#x201c;ASC&#x201d;) 320, Investments - Debt Securities. &lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Fair Value of Financial Instruments&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;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.&#160; The standard describes three levels of inputs that may be used to measure fair value:&lt;/p&gt;&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; margin-bottom: 6pt; font: 10pt Times New Roman, Times, Serif"&gt;
&lt;tr style="vertical-align: top"&gt;
  &lt;td style="text-align: justify; width: 0.5in"&gt;&lt;span&gt;&#x25fe;&lt;/span&gt;&lt;/td&gt;
  &lt;td style="text-align: justify"&gt;Level 1: Quoted prices (unadjusted) for identical assets or liabilities in active markets that the entity has the ability to access as
of the measurement date.&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;


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




&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; margin-bottom: 6pt; font: 10pt Times New Roman, Times, Serif"&gt;
&lt;tr style="vertical-align: top"&gt;
  &lt;td style="text-align: justify; width: 0.5in"&gt;&lt;span&gt;&#x25fe;&lt;/span&gt;&#160;&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="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;The carrying amounts of financial instruments,
including cash and cash equivalents, short term investment securities, accounts receivable, accounts payable and accrued expenses, approximated
fair value as of June 30, 2023 and 2022 because of the immediate or short-term maturity of these financial instruments.&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Accounts Receivable and Allowance for Doubtful
Accounts&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;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 doubtful accounts.&#160; The Company estimates the allowance based on its analysis of specific balances. Interest is not charged on
past due balances.&#160; Based on these factors, there was an allowance for doubtful accounts of $3,000 at June 30, 2023 and 2022.&#160;
Changes to the allowance for doubtful accounts are charged to expense and reduced by charge-offs, net of recoveries.&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;ASC 260-10 &#x201c;Earnings Per Share
(EPS)&#x201d; requires the Company to calculate net income per share based on basic and diluted net income per share, as defined.
Basic EPS excludes dilution and is computed by dividing net income by the weighted average number of shares outstanding for the
period. Diluted EPS reflects the potential dilution that could occur if securities or other contracts to issue common stock
were exercised or converted into common stock. The dilutive effect of outstanding options issued by the Company are reflected
in diluted EPS using the treasury stock method. Under the treasury stock method, options will only have a dilutive effect when
the average market price of common stock during the period exceeds the exercise price of the options.&lt;/p&gt;

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

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

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;Comprehensive income consists of net income and other
comprehensive income (loss).&#160; Other comprehensive income for fiscal years ended June 30, 2023 and 2022 consists of unrealized holding
gains (losses) on available-for-sale debt securities.&#160;&lt;/p&gt;

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

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

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;The preparation of financial statements in conformity
with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that
affect the reported amount of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial
statements and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from those estimates.&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;&#160;&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;Recently Adopted Accounting Standards&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;In December 2019, the FASB issued ASU 2019-12, &#x201c;Income
Taxes (Topic 740): Simplifying the Accounting for Income Taxes.&#x201d; ASU 2019-12 amends ASC 740 to simplify the accounting for income
taxes by removing certain exceptions for investments, intraperiod allocations and interim calculations, and adding guidance to reduce
complexity in the accounting standard under the FASB&#x2019;s simplification initiative. ASU 2019-12 is effective for public entities for
fiscal years beginning after December 15, 2020. Upon adoption, the amendments in ASU 2019-12 should be applied on a prospective basis
to all periods presented. The Company adopted the new guidance under ASU 2019-12 in the first quarter of fiscal year 2022 and removed
the exception for intraperiod allocations from its interim period tax provision calculation, accordingly. The removal of the exception
for intraperiod allocations did not have a material impact on the Company.&lt;/p&gt;

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



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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;In June 2016, the FASB issued ASU 2016-13, &#x201c;Financial
Instruments-Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments&#x201d;, &lt;span&gt;which
requires a financial asset measured at amortized cost basis to be presented at the net amount expected to be collected, with further clarifications
made more recently. For trade receivables, loans and other financial instruments, the Company will be required to use a forward-looking
expected loss model rather than the incurred loss model for recognizing credit losses which reflects losses that are probable. Credit
losses relating to available-for-sale debt securities are required to be recorded through an allowance for credit losses rather than as
a reduction in the amortized cost basis of the securities. &lt;/span&gt;ASU 2016-13 is effective for public entities for fiscal years beginning
after December 15, 2022, including interim periods within those fiscal years. Upon adoption, the amendments in ASU 2016-13 should be applied
on a prospective basis to all periods presented relating to available-for-sale debt securities. For all other financial instruments the
Company upon adoption will apply the amendments on a modified-retrospective approach. The Company is expected to adopt the new guidance
under ASU 2016-13 in the first quarter of fiscal year 2024 and is currently evaluating the impact of the adoption on its financial statements.
The adoption of this standard is not expected to have a material impact on the Company&#x2019;s financial statements.&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;Impairment of Long-Lived Assets&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;Long-lived assets, including property, plant, and
equipment, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not
be recoverable.&#160; Recoverability of assets to be held and used is measured by a comparison of the carrying amount of an asset to estimated
undiscounted future cash flows expected to be generated by the asset.&#160; If the carrying amount of an asset exceeds its estimated future
cash flows, an impairment charge is recognized by the amount by which the carrying amount of the asset exceeds the fair value of the asset.&#160;
There were no impairments of long-lived assets in fiscal years 2023 and 2022.&#160; Assets to be disposed of are separately presented
in the balance sheet and reported at the lower of the carrying amount or fair value less costs to sell, and no longer depreciated.&#160;
The assets and liabilities of a disposed group classified as held for sale are presented separately in the appropriate asset and liability
sections of the balance sheet, if applicable.&lt;/p&gt;

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

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;The market for our defense electronics products
is largely dependent on the availability of new contracts from the United States and foreign governments to prime contractors to which
we provide components.&#160; Any decline in expenditures by the United States or foreign governments may have an adverse effect on our
financial performance.&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Generally, U.S. Government contracts are subject
to procurement laws and regulations.&#160; Some of the Company&#x2019;s contracts are governed by the Federal Acquisition Regulation (FAR),
which lays out uniform policies and procedures for acquiring goods and services by the U.S. Government, and agency-specific acquisition
regulations that implement or supplement the FAR.&#160; For example, the Department of Defense implements the FAR through the Defense
Federal Acquisition Regulation (DFAR).&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;The FAR also contains guidelines and regulations
for managing a contract after award, including conditions under which contracts may be terminated, in whole or in part, at the government&#x2019;s
convenience or for default.&#160; If a contract is terminated for the convenience of the government, a contractor is entitled to receive
payments for its allowable costs and, in general, the proportionate share of fees or earnings for the work done.&#160; If a contract is
terminated for default, the government generally pays for only the work it has accepted.&#160; These regulations also subject the Company
to financial audits and other reviews by the government of its costs, performance, accounting and general business practices relating
to its contracts, which may result in adjustment of the Company&#x2019;s contract-related costs and fees.&lt;/p&gt;</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:RevenueRecognitionPolicyTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;Revenue&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;The majority of our sales are generated from military
contracts from defense companies, the 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.&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;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.&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;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.&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;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.&lt;/p&gt;</us-gaap:RevenueRecognitionPolicyTextBlock>
    <us-gaap:InventoryPolicyTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;Inventory&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;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 and reduce inventory balances based on this analysis.&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Inventory relating to contracts in process and
work in process is valued at 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&#x2019;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.&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;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.&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0"&gt;&#160;&lt;/p&gt;</us-gaap:InventoryPolicyTextBlock>
    <esp:ContractLiabilitiesPolicyTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Contract Liabilities&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;Contract liabilities include advance payments and
billings in excess of revenue recognized.&lt;/p&gt;</esp:ContractLiabilitiesPolicyTextBlock>
    <us-gaap:DepreciationDepletionAndAmortizationPolicyTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Depreciation&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Depreciation of plant and equipment is computed
on a straight-line basis over the estimated useful lives of the assets.&#160;&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Estimated useful lives of depreciable assets
are as follows:&lt;/p&gt;&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 80%; border-collapse: collapse; margin-left: auto; margin-right: auto;"&gt;
  &lt;tr style="vertical-align: top; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 50%; padding-bottom: 6pt"&gt;Buildings and improvements&lt;/td&gt;
    &lt;td style="width: 50%; padding-bottom: 6pt; text-align: center"&gt;10 &#x2013; 50 years&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: top; "&gt;
    &lt;td style="padding-bottom: 6pt"&gt;Machinery and equipment&lt;/td&gt;
    &lt;td style="padding-bottom: 6pt; text-align: center"&gt;3 &#x2013; 20 years&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: top; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 6pt"&gt;Furniture and fixtures&lt;/td&gt;
    &lt;td style="padding-bottom: 6pt; text-align: center"&gt;7 &#x2013; 10 years&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;</us-gaap:DepreciationDepletionAndAmortizationPolicyTextBlock>
    <esp:ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock contextRef="c0">Estimated useful lives of depreciable assets
are as follows:&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 80%; border-collapse: collapse; margin-left: auto; margin-right: auto;"&gt;
  &lt;tr style="vertical-align: top; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 50%; padding-bottom: 6pt"&gt;Buildings and improvements&lt;/td&gt;
    &lt;td style="width: 50%; padding-bottom: 6pt; text-align: center"&gt;10 &#x2013; 50 years&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: top; "&gt;
    &lt;td style="padding-bottom: 6pt"&gt;Machinery and equipment&lt;/td&gt;
    &lt;td style="padding-bottom: 6pt; text-align: center"&gt;3 &#x2013; 20 years&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: top; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 6pt"&gt;Furniture and fixtures&lt;/td&gt;
    &lt;td style="padding-bottom: 6pt; text-align: center"&gt;7 &#x2013; 10 years&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;</esp:ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="c33">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="c34">P50Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="c35">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="c36">P20Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="c37">P7Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="c38">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:IncomeTaxPolicyTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Income Taxes&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;The Company follows the provisions of Accounting
Standards Codification (&#x201c;ASC&#x201d;) Topic 740-10, "Accounting for Income Taxes."&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Under the provisions of ASC 740-10, deferred
tax assets and liabilities are recognized for the future tax consequences attributable to differences between the financial statement
carrying amounts of existing assets and liabilities and their respective tax bases.&#160; Deferred tax assets and liabilities are measured
using enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to be recovered
or settled.&#160; The effect on deferred taxes and liabilities of a change in tax rates is recognized in earnings in the period that includes
the enactment date.&lt;/p&gt;</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Cash and Cash Equivalents&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Cash and cash equivalents consist of cash
and money market funds. The Company considers all highly liquid investments with original maturities
of three months or less to be cash equivalents.&#160;&lt;/p&gt;</us-gaap:CashAndCashEquivalentsPolicyTextBlock>
    <us-gaap:InvestmentPolicyTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Investment Securities&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;The Company accounts for its investments in
debt securities in accordance with ASC 320-10-25, &#x201c;Accounting for Certain Investments in Debt and Equity Securities.&#x201d;&#160;
Investments in debt securities at June 30, 2023 consists of municipal bonds, and treasury bills, and at June 30, 2022, consisted of municipal
bonds.&#160; The Company classifies investments in debt securities as available-for-sale. Unrealized holding gains and losses, net of
related tax effect, on available-for-sale debt securities are excluded from earnings and are reported as a separate component of stockholders&#x2019;
equity until realized.&#160; Realized gains and losses for debt securities classified as available-for-sale are included in earnings and
are determined using the specific identification method.&#160; Interest income is recognized when earned.&#160; Fair values are based
on quoted market prices available as of the balance sheet date, and are therefore considered a Level 1 valuation.&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Certificates of deposit held for investment
with an original maturity greater than three months are carried at amortized cost and reported as short-term investments on the balance
sheets. The type of certificates of deposit that the Company invests in are not considered debt securities under Financial Accounting
Standards Board ("FASB") Accounting Standards Codification (&#x201c;ASC&#x201d;) 320, Investments - Debt Securities. &lt;/p&gt;</us-gaap:InvestmentPolicyTextBlock>
    <us-gaap:FairValueOfFinancialInstrumentsPolicy contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Fair Value of Financial Instruments&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;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.&#160; The standard describes three levels of inputs that may be used to measure fair value:&lt;/p&gt;&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; margin-bottom: 6pt; font: 10pt Times New Roman, Times, Serif"&gt;
&lt;tr style="vertical-align: top"&gt;
  &lt;td style="text-align: justify; width: 0.5in"&gt;&lt;span&gt;&#x25fe;&lt;/span&gt;&lt;/td&gt;
  &lt;td style="text-align: justify"&gt;Level 1: Quoted prices (unadjusted) for identical assets or liabilities in active markets that the entity has the ability to access as
of the measurement date.&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; margin-bottom: 6pt; font: 10pt Times New Roman, Times, Serif"&gt;
&lt;tr style="vertical-align: top"&gt;
  &lt;td style="text-align: justify; width: 0.5in"&gt;&lt;span&gt;&#x25fe;&lt;/span&gt;&lt;/td&gt;
  &lt;td style="text-align: justify"&gt;Level 2: Significant other observable inputs other than Level 1 prices such as quoted prices for similar assets or liabilities; quoted
prices in markets that are not active; or other inputs that are observable or can be corroborated by observable market data.&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; margin-bottom: 6pt; font: 10pt Times New Roman, Times, Serif"&gt;
&lt;tr style="vertical-align: top"&gt;
  &lt;td style="text-align: justify; width: 0.5in"&gt;&lt;span&gt;&#x25fe;&lt;/span&gt;&#160;&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="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;The carrying amounts of financial instruments,
including cash and cash equivalents, short term investment securities, accounts receivable, accounts payable and accrued expenses, approximated
fair value as of June 30, 2023 and 2022 because of the immediate or short-term maturity of these financial instruments.&#160;&lt;/p&gt;</us-gaap:FairValueOfFinancialInstrumentsPolicy>
    <us-gaap:TradeAndOtherAccountsReceivablePolicy contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Accounts Receivable and Allowance for Doubtful
Accounts&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;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 doubtful accounts.&#160; The Company estimates the allowance based on its analysis of specific balances. Interest is not charged on
past due balances.&#160; Based on these factors, there was an allowance for doubtful accounts of $3,000 at June 30, 2023 and 2022.&#160;
Changes to the allowance for doubtful accounts are charged to expense and reduced by charge-offs, net of recoveries.&lt;/p&gt;</us-gaap:TradeAndOtherAccountsReceivablePolicy>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="c3" decimals="0" unitRef="usd">3000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="c4" decimals="0" unitRef="usd">3000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:EarningsPerSharePolicyTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Per Share Amounts&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;ASC 260-10 &#x201c;Earnings Per Share
(EPS)&#x201d; requires the Company to calculate net income per share based on basic and diluted net income per share, as defined.
Basic EPS excludes dilution and is computed by dividing net income by the weighted average number of shares outstanding for the
period. Diluted EPS reflects the potential dilution that could occur if securities or other contracts to issue common stock
were exercised or converted into common stock. The dilutive effect of outstanding options issued by the Company are reflected
in diluted EPS using the treasury stock method. Under the treasury stock method, options will only have a dilutive effect when
the average market price of common stock during the period exceeds the exercise price of the options.&lt;/p&gt;</us-gaap:EarningsPerSharePolicyTextBlock>
    <us-gaap:ComprehensiveIncomePolicyPolicyTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;Comprehensive Income&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;Comprehensive income consists of net income and other
comprehensive income (loss).&#160; Other comprehensive income for fiscal years ended June 30, 2023 and 2022 consists of unrealized holding
gains (losses) on available-for-sale debt securities.&#160;&lt;/p&gt;</us-gaap:ComprehensiveIncomePolicyPolicyTextBlock>
    <us-gaap:UseOfEstimates contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;Use of Estimates&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;The preparation of financial statements in conformity
with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that
affect the reported amount of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial
statements and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from those estimates.&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;&#160;&lt;/p&gt;</us-gaap:UseOfEstimates>
    <esp:RecentlyIssuedAccountingStandardsPolicyTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;Recently Adopted Accounting Standards&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;In December 2019, the FASB issued ASU 2019-12, &#x201c;Income
Taxes (Topic 740): Simplifying the Accounting for Income Taxes.&#x201d; ASU 2019-12 amends ASC 740 to simplify the accounting for income
taxes by removing certain exceptions for investments, intraperiod allocations and interim calculations, and adding guidance to reduce
complexity in the accounting standard under the FASB&#x2019;s simplification initiative. ASU 2019-12 is effective for public entities for
fiscal years beginning after December 15, 2020. Upon adoption, the amendments in ASU 2019-12 should be applied on a prospective basis
to all periods presented. The Company adopted the new guidance under ASU 2019-12 in the first quarter of fiscal year 2022 and removed
the exception for intraperiod allocations from its interim period tax provision calculation, accordingly. The removal of the exception
for intraperiod allocations did not have a material impact on the Company.&lt;/p&gt;</esp:RecentlyIssuedAccountingStandardsPolicyTextBlock>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 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: 0; text-align: justify"&gt;In June 2016, the FASB issued ASU 2016-13, &#x201c;Financial
Instruments-Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments&#x201d;, &lt;span&gt;which
requires a financial asset measured at amortized cost basis to be presented at the net amount expected to be collected, with further clarifications
made more recently. For trade receivables, loans and other financial instruments, the Company will be required to use a forward-looking
expected loss model rather than the incurred loss model for recognizing credit losses which reflects losses that are probable. Credit
losses relating to available-for-sale debt securities are required to be recorded through an allowance for credit losses rather than as
a reduction in the amortized cost basis of the securities. &lt;/span&gt;ASU 2016-13 is effective for public entities for fiscal years beginning
after December 15, 2022, including interim periods within those fiscal years. Upon adoption, the amendments in ASU 2016-13 should be applied
on a prospective basis to all periods presented relating to available-for-sale debt securities. For all other financial instruments the
Company upon adoption will apply the amendments on a modified-retrospective approach. The Company is expected to adopt the new guidance
under ASU 2016-13 in the first quarter of fiscal year 2024 and is currently evaluating the impact of the adoption on its financial statements.
The adoption of this standard is not expected to have a material impact on the Company&#x2019;s financial statements.&lt;/p&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;Impairment of Long-Lived Assets&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;Long-lived assets, including property, plant, and
equipment, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of an asset may not
be recoverable.&#160; Recoverability of assets to be held and used is measured by a comparison of the carrying amount of an asset to estimated
undiscounted future cash flows expected to be generated by the asset.&#160; If the carrying amount of an asset exceeds its estimated future
cash flows, an impairment charge is recognized by the amount by which the carrying amount of the asset exceeds the fair value of the asset.&#160;
There were no impairments of long-lived assets in fiscal years 2023 and 2022.&#160; Assets to be disposed of are separately presented
in the balance sheet and reported at the lower of the carrying amount or fair value less costs to sell, and no longer depreciated.&#160;
The assets and liabilities of a disposed group classified as held for sale are presented separately in the appropriate asset and liability
sections of the balance sheet, if applicable.&lt;/p&gt;</us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock>
    <us-gaap:ConcentrationRiskCreditRisk contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Concentrations of Risk&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;The market for our defense electronics products
is largely dependent on the availability of new contracts from the United States and foreign governments to prime contractors to which
we provide components.&#160; Any decline in expenditures by the United States or foreign governments may have an adverse effect on our
financial performance.&#160;&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Generally, U.S. Government contracts are subject
to procurement laws and regulations.&#160; Some of the Company&#x2019;s contracts are governed by the Federal Acquisition Regulation (FAR),
which lays out uniform policies and procedures for acquiring goods and services by the U.S. Government, and agency-specific acquisition
regulations that implement or supplement the FAR.&#160; For example, the Department of Defense implements the FAR through the Defense
Federal Acquisition Regulation (DFAR).&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;The FAR also contains guidelines and regulations
for managing a contract after award, including conditions under which contracts may be terminated, in whole or in part, at the government&#x2019;s
convenience or for default.&#160; If a contract is terminated for the convenience of the government, a contractor is entitled to receive
payments for its allowable costs and, in general, the proportionate share of fees or earnings for the work done.&#160; If a contract is
terminated for default, the government generally pays for only the work it has accepted.&#160; These regulations also subject the Company
to financial audits and other reviews by the government of its costs, performance, accounting and general business practices relating
to its contracts, which may result in adjustment of the Company&#x2019;s contract-related costs and fees.&lt;/p&gt;</us-gaap:ConcentrationRiskCreditRisk>
    <us-gaap:RevenueFromContractWithCustomerTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;Note 3. Revenue&lt;/p&gt;

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

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 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: 0; text-align: justify; color: #1F497D"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;Total revenue recognized for the twelve months ended
June 30, 2023 based on units delivered totaled $27,770,365 compared to $26,931,949 for the same periods in fiscal year 2022.&#160; Total
revenue recognized for the twelve months ended June 30, 2023 based on milestones achieved totaled $7,821,958 compared to $5,172,825 for
the same periods in fiscal year 2022.&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 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 result in the adjustment of the transaction price
as of June 30, 2023.&#160; Our payment terms are generally 30-60 days.&#160;&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;Contract liabilities were $8,081,838 and $3,384,474
as of June 30, 2023 and 2022, respectively. &#160;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, approximated $2,018,642 for the twelve months ended June 30, 2023. 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: 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;The Company&#x2019;s backlog at June 30, 2023 totaling
approximately $83.6 million is expected, based on expected due dates, to be recognized in the following fiscal years: 47% in 2024; 38%
in 2025, 11% in 2026 and 4% thereafter. &#160;&#160;&lt;/p&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:Revenues contextRef="c39" decimals="0" unitRef="usd">27770365</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c40" decimals="0" unitRef="usd">26931949</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c41" decimals="0" unitRef="usd">7821958</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c42" decimals="0" unitRef="usd">5172825</us-gaap:Revenues>
    <us-gaap:ContractWithCustomerLiability contextRef="c43" decimals="0" unitRef="usd">8081838</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability contextRef="c44" decimals="0" unitRef="usd">3384474</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability contextRef="c3" decimals="0" unitRef="usd">2018642</us-gaap:ContractWithCustomerLiability>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="c45" decimals="-5" unitRef="usd">83600000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <esp:BacklogPercentageOfRecognitionsYearOne contextRef="c45" decimals="2" unitRef="pure">0.47</esp:BacklogPercentageOfRecognitionsYearOne>
    <esp:BacklogPercentageOfRecognitionsYearTwo contextRef="c45" decimals="2" unitRef="pure">0.38</esp:BacklogPercentageOfRecognitionsYearTwo>
    <esp:BacklogPercentageOfRecognitionsYearThree contextRef="c45" decimals="2" unitRef="pure">0.11</esp:BacklogPercentageOfRecognitionsYearThree>
    <esp:BacklogPercentageOfRecognitions contextRef="c45" decimals="2" unitRef="pure">0.04</esp:BacklogPercentageOfRecognitions>
    <us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Note 4. Investment Securities&lt;/p&gt;

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

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

&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"&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="font: 10pt Times New Roman, Times, Serif; white-space: nowrap; text-decoration: underline"&gt;June 30, 2023&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;11,280,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-6"&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-7"&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;11,280,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;$&lt;/td&gt;&lt;td style="text-align: right"&gt;260,475&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;165&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;(7,843&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;252,797&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;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;430,952&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;1,225&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;(301&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;)&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;431,876&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;11,971,427&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;1,390&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(8,144&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;11,964,673&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: 0 0 6pt; text-indent: 0.25in"&gt;&lt;span style="text-underline-style: double"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"&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="font: 10pt Times New Roman, Times, Serif; text-decoration: underline; white-space: nowrap"&gt;June 30, 2022&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;3,639,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-8"&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-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;3,639,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; padding-bottom: 1pt"&gt;Municipal bonds&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;72,225&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;&lt;div style="-sec-ix-hidden: hidden-fact-10"&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;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(2,446&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;)&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;69,779&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total investment securities&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;3,711,225&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;&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: 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;(2,446&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;3,708,779&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: 0 0 6pt; text-indent: 0.25in"&gt;&lt;span style="text-underline-style: double"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;The portfolio is diversified and highly liquid
and primarily consists of investment grade fixed income instruments. At June 30, 2023, 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: 0 0 6pt; text-align: justify"&gt;As of June 30, 2023 and June 30, 2022, the remaining
contractual maturities of available-for-sale debt securities were as follows:&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"&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="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid"&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: center"&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="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;One Year&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;Five Years&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;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;June 30, 2023&lt;/td&gt;&lt;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;11,711,876&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;252,797&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;11,964,673&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, 2022&lt;/td&gt;&lt;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;3,639,000&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;69,779&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;3,708,779&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:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock>
    <us-gaap:DebtSecuritiesAvailableForSaleTableTextBlock contextRef="c0">The Company classifies investment securities as available-for-sale which have been determined to be level 1 assets.&#160; The cost,
gross unrealized gains, gross unrealized losses and fair value debt securities by major security type at June 30, 2023&#160;and June 30,
2022 are as follows:&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"&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="font: 10pt Times New Roman, Times, Serif; white-space: nowrap; text-decoration: underline"&gt;June 30, 2023&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;11,280,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-6"&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-7"&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;11,280,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;$&lt;/td&gt;&lt;td style="text-align: right"&gt;260,475&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;165&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;(7,843&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;252,797&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;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;430,952&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;1,225&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;(301&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;)&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;431,876&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;11,971,427&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;1,390&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(8,144&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;11,964,673&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: 0 0 6pt; text-indent: 0.25in"&gt;&lt;span style="text-underline-style: double"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"&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="font: 10pt Times New Roman, Times, Serif; text-decoration: underline; white-space: nowrap"&gt;June 30, 2022&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;3,639,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-8"&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-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;3,639,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; padding-bottom: 1pt"&gt;Municipal bonds&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;72,225&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;&lt;div style="-sec-ix-hidden: hidden-fact-10"&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;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;(2,446&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;)&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;69,779&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total investment securities&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;3,711,225&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;&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: 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;(2,446&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;3,708,779&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:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c46" decimals="0" unitRef="usd">11280000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c46" decimals="0" unitRef="usd">11280000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c47" decimals="0" unitRef="usd">260475</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c47" decimals="0" unitRef="usd">165</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c47" decimals="0" unitRef="usd">7843</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c47" decimals="0" unitRef="usd">252797</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c48" decimals="0" unitRef="usd">430952</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c48" decimals="0" unitRef="usd">1225</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c48" decimals="0" unitRef="usd">301</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c48" decimals="0" unitRef="usd">431876</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c3" decimals="0" unitRef="usd">11971427</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c3" decimals="0" unitRef="usd">1390</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c3" decimals="0" unitRef="usd">8144</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c3" decimals="0" unitRef="usd">11964673</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c49" decimals="0" unitRef="usd">3639000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c49" decimals="0" unitRef="usd">3639000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c50" decimals="0" unitRef="usd">72225</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c50" decimals="0" unitRef="usd">2446</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c50" decimals="0" unitRef="usd">69779</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c4" decimals="0" unitRef="usd">3711225</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c4" decimals="0" unitRef="usd">2446</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c4" decimals="0" unitRef="usd">3708779</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock contextRef="c0">As of June 30, 2023 and June 30, 2022, the remaining
contractual maturities of available-for-sale debt securities were as follows:&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"&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="white-space: nowrap; text-align: center; border-bottom: Black 1pt solid"&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: center"&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="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;One Year&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;Five Years&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;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;June 30, 2023&lt;/td&gt;&lt;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;11,711,876&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;252,797&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;11,964,673&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, 2022&lt;/td&gt;&lt;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;3,639,000&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;69,779&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;3,708,779&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="c3" decimals="0" unitRef="usd">11711876</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue>
    <us-gaap:AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue contextRef="c3" decimals="0" unitRef="usd">252797</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c3" decimals="0" unitRef="usd">11964673</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue contextRef="c4" decimals="0" unitRef="usd">3639000</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue>
    <us-gaap:AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue contextRef="c4" decimals="0" unitRef="usd">69779</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c4" decimals="0" unitRef="usd">3708779</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:LongTermContractsOrProgramsDisclosureTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Note 5. Contracts in Process&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 0 0.75in; text-align: justify; text-indent: -0.75in"&gt;Contracts in process
at June 30, 2023 and 2022 are as follows:&lt;/p&gt;

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

&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"&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="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;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;2022&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: 74%; text-align: left"&gt;Unrecognized gross contract value&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: 10%; text-align: right"&gt;83,577,153&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: 10%; text-align: right"&gt;76,782,028&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;Costs related to contracts in process&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,318,579&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;16,207,419&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: 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 12pt; text-align: justify"&gt;Included in costs relating to contracts in
process at June 30, 2023 and 2022 are costs relative to contracts that may not be completed within the ensuing year as contracts vary
in size, scope and duration. Under the units-of-delivery method, the related sale and cost of sales will not be reflected in the statements
of comprehensive income until the units under contract are shipped.&lt;/p&gt;</us-gaap:LongTermContractsOrProgramsDisclosureTextBlock>
    <esp:ScheduleOfContractsInProcessTableTextBlock contextRef="c0">Contracts in process
at June 30, 2023 and 2022 are as follows:&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"&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="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;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;2022&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: 74%; text-align: left"&gt;Unrecognized gross contract value&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: 10%; text-align: right"&gt;83,577,153&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: 10%; text-align: right"&gt;76,782,028&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;Costs related to contracts in process&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,318,579&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;16,207,419&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;</esp:ScheduleOfContractsInProcessTableTextBlock>
    <esp:UnrecognizedGrossContractValue contextRef="c3" decimals="0" unitRef="usd">83577153</esp:UnrecognizedGrossContractValue>
    <esp:UnrecognizedGrossContractValue contextRef="c4" decimals="0" unitRef="usd">76782028</esp:UnrecognizedGrossContractValue>
    <us-gaap:InventoryForLongTermContractsOrPrograms contextRef="c3" decimals="0" unitRef="usd">17318579</us-gaap:InventoryForLongTermContractsOrPrograms>
    <us-gaap:InventoryForLongTermContractsOrPrograms contextRef="c4" decimals="0" unitRef="usd">16207419</us-gaap:InventoryForLongTermContractsOrPrograms>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Note 6. Property, Plant and Equipment&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0 0 6pt; text-align: justify"&gt;Property, plant and equipment at June 30, 2023
and 2022 is as follows:&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 90%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;"&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="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;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;2022&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: 74%"&gt;Land&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: 10%; text-align: right"&gt;45,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: 10%; text-align: right"&gt;45,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;Building and improvements&lt;/td&gt;&lt;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,811,179&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,450,399&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;Machinery and equipment&lt;/td&gt;&lt;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,402,679&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,287,648&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;Furniture and fixtures&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;164,200&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;164,200&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&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;16,423,058&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;15,947,247&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;Accumulated depreciation&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;(13,597,969&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;)&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;(13,149,254&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Property, plant and equipment, net&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;2,825,089&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;2,797,993&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: 0; text-align: justify"&gt;&#160;&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;Depreciation expense was $484,920 and $494,635
for the years ended June 30, 2023 and 2022, respectively.&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 will be conducted on Espey&#x2019;s property in Saratoga Springs, NY, with completion slated for
2024. 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 expects to have an initial cash outlay to satisfy
income tax obligations arising from the value of the award. Included in building and improvements at June 30, 2023 and 2022 was
$308,001 and $58,296 respectively, for facility and capital upgrades under the funding award. As of September 19, 2023, the first milestone totaling approximately $969,000 was achieved and reimbursed. The Company expects to record
the receipt of milestones payments received as a reduction from the cost of the assets.&lt;/p&gt;</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock contextRef="c0">Property, plant and equipment at June 30, 2023
and 2022 is as follows:&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 90%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;"&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="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;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;2022&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: 74%"&gt;Land&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: 10%; text-align: right"&gt;45,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: 10%; text-align: right"&gt;45,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;Building and improvements&lt;/td&gt;&lt;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,811,179&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,450,399&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;Machinery and equipment&lt;/td&gt;&lt;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,402,679&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,287,648&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;Furniture and fixtures&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;164,200&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;164,200&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&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;16,423,058&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;15,947,247&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;Accumulated depreciation&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;(13,597,969&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;)&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;(13,149,254&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Property, plant and equipment, net&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;2,825,089&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;2,797,993&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: 0; text-align: justify"&gt;&#160;&lt;/p&gt;</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c55" decimals="0" unitRef="usd">45000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c56" decimals="0" unitRef="usd">45000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c52" decimals="0" unitRef="usd">4811179</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c53" decimals="0" unitRef="usd">4450399</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c57" decimals="0" unitRef="usd">11402679</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c58" decimals="0" unitRef="usd">11287648</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c59" decimals="0" unitRef="usd">164200</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c60" decimals="0" unitRef="usd">164200</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c3" decimals="0" unitRef="usd">16423058</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c4" decimals="0" unitRef="usd">15947247</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="c3" decimals="0" unitRef="usd">13597969</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="c4" decimals="0" unitRef="usd">13149254</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c3" decimals="0" unitRef="usd">2825089</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c4" decimals="0" unitRef="usd">2797993</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Depreciation contextRef="c0" decimals="0" unitRef="usd">484920</us-gaap:Depreciation>
    <us-gaap:Depreciation contextRef="c5" decimals="0" unitRef="usd">494635</us-gaap:Depreciation>
    <us-gaap:EquipmentExpense contextRef="c51" decimals="-5" unitRef="usd">7400000</us-gaap:EquipmentExpense>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c52" decimals="0" unitRef="usd">308001</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c53" decimals="0" unitRef="usd">58296</us-gaap:PropertyPlantAndEquipmentNet>
    <esp:RevenueRecognitionMilestoneMethodRevenuesRecognized contextRef="c54" decimals="0" unitRef="usd">969000</esp:RevenueRecognitionMilestoneMethodRevenuesRecognized>
    <esp:PensionExpenseTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;Note 7. Pension Expense&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;Under terms of a negotiated union contract
which expires on June 30, 2025, the Company is obligated to make contributions to a union-sponsored International Brotherhood of
Electrical Workers Local 1799 defined benefit pension plan (Plan identifying number is 14-6065199) covering eligible employees. Such
contributions and expenses are based upon hours worked at a specified rate and amounted to $102,612 in fiscal year 2023 and $110,378
in fiscal year 2022. These contributions represent more than five percent of the total contributions made into the Plan. For the
years beginning January 1, 2023 and 2022, the Plan was in the &#x201c;green zone&#x201d; which means it is neither endangered nor
critical status. In addition, the Company is obligated to make contributions to the National Electrical Benefit Fund (NEBF) (Plan
identifying number is 53-0181657). The Plan is a defined pension benefit plan covering eligible union employees. Such
contributions and expenses amounted to $72,350 in fiscal year 2023 and $73,771 in
fiscal year 2022. The contribution did not and will not in the future have a material impact on the Company&#x2019;s financial
statements.&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;The Company sponsors a 401(k) plan for non-union
workers with employee and employer matching contributions. The employer match is 10% of the employee contribution and was $53,768 and
$53,836, for fiscal years 2023 and 2022, respectively.&lt;/p&gt;</esp:PensionExpenseTextBlock>
    <us-gaap:PensionAndOtherPostretirementBenefitExpense contextRef="c0" decimals="0" unitRef="usd">102612</us-gaap:PensionAndOtherPostretirementBenefitExpense>
    <us-gaap:PensionAndOtherPostretirementBenefitExpense contextRef="c5" decimals="0" unitRef="usd">110378</us-gaap:PensionAndOtherPostretirementBenefitExpense>
    <us-gaap:MultiemployerPlanPensionSignificantPlanContribution contextRef="c0" decimals="0" unitRef="usd">72350</us-gaap:MultiemployerPlanPensionSignificantPlanContribution>
    <us-gaap:MultiemployerPlanPensionSignificantPlanContribution contextRef="c5" decimals="0" unitRef="usd">73771</us-gaap:MultiemployerPlanPensionSignificantPlanContribution>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent contextRef="c0" decimals="INF" unitRef="pure">0.10</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent contextRef="c5" decimals="INF" unitRef="pure">0.10</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent>
    <esp:DefinedContributionPlanEmployersMatchingContribution contextRef="c0" decimals="0" unitRef="usd">53768</esp:DefinedContributionPlanEmployersMatchingContribution>
    <esp:DefinedContributionPlanEmployersMatchingContribution contextRef="c5" decimals="0" unitRef="usd">53836</esp:DefinedContributionPlanEmployersMatchingContribution>
    <us-gaap:IncomeTaxDisclosureTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;Note 8. Provision for Income Taxes&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;A summary of the components of the provision for income
taxes for the years ended June 30, 2023 and 2022 is as follows:&lt;/p&gt;

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

&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"&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;2023&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;2022&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: 74%; text-align: left"&gt;Current tax expense - federal&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: 10%; text-align: right"&gt;1,059,743&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: 10%; text-align: right"&gt;313,705&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;Current tax expense - state&lt;/td&gt;&lt;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,595&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,978&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;Deferred tax (benefit) expense&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;(40,002&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;)&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;9,271&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; padding-left: 0.5in"&gt;Provision for income taxes&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;1,029,336&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;327,954&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; text-align: justify; text-indent: 0pt"&gt;&#160;&lt;/p&gt;

&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;Deferred income taxes reflect the impact of
"temporary differences" between the amount of assets and liabilities for financial reporting purposes and such amounts measured
by tax laws and regulations. These "temporary differences" are determined in accordance with ASC 740-10.&lt;/p&gt;&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&#160;&lt;/p&gt;&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;The combined U.S. federal and state effective
income tax rates of 21.9% and 20.6%, for 2023 and 2022 respectively, differed from the statutory U.S. federal income tax rate for the
following reasons:&lt;/p&gt;

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

&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 90%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;"&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;2023&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;2022&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: 74%; text-align: left"&gt;U.S. federal statutory income tax rate&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: 10%; text-align: right"&gt;21.0&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;%&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: 10%; text-align: right"&gt;21.0&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 0pt; text-align: left"&gt;Increase (reduction) in rate resulting from:&lt;/td&gt;&lt;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-left: 20pt; text-align: left"&gt;State franchise tax, net of federal income tax benefit&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.2&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;0.3&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; text-align: left"&gt;ESOP cost versus Fair Market Value&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(0.2&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.3&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; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 20pt; text-align: left"&gt;Dividend on allocated 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;&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;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(3.1&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; text-align: left"&gt;Stock-based compensation&lt;/td&gt;&lt;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.0&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.0&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; text-align: left"&gt;Rate Differential on Net Operating Loss Carryback&lt;/td&gt;&lt;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-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;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(0.1&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; padding-bottom: 1pt"&gt;Other&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;(0.1&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;)&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;(0.2&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Effective tax rate&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;21.9&lt;/td&gt;&lt;td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 1.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;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;20.6&lt;/td&gt;&lt;td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 1.5pt; text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;For the years ended June 30, 2023 and 2022
deferred income tax (benefit) expense of ($40,002) and $9,271, respectively, results from the changes in temporary differences for
each year. The tax effects of temporary differences that give rise to deferred tax assets and deferred tax liabilities as of June
30, 2023 and 2022 are presented as follows:&lt;/p&gt;

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

&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 90%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;"&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;2023&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;2022&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-align: left"&gt;Deferred tax assets:&lt;/td&gt;&lt;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; width: 74%; text-align: left"&gt;Accrued expenses&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: 10%; text-align: right"&gt;273,059&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: 10%; text-align: right"&gt;204,774&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 20pt"&gt;ESOP&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;24,407&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;14,237&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; text-align: left"&gt;Stock-based compensation&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;36,552&lt;/td&gt;&lt;td style="padding-bottom: 1pt; white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;33,719&lt;/td&gt;&lt;td style="padding-bottom: 1pt; white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 40pt; text-align: left; padding-bottom: 1pt"&gt;Total deferred tax assets&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;334,018&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;252,730&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"&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;Deferred tax liability:&lt;/td&gt;&lt;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; text-align: left"&gt;Property, plant and equipment - principally due to differences in depreciation methods&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;337,501&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;374,566&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; text-align: left"&gt;Inventory - effect of uniform capitalization&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;99,215&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;19,276&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; text-align: left; padding-bottom: 1pt"&gt;Prepaid expenses&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;35,129&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;36,716&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="padding-bottom: 1pt; padding-left: 40pt; text-align: left"&gt;Total deferred tax liability&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;471,845&lt;/td&gt;&lt;td style="padding-bottom: 1pt; white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;430,558&lt;/td&gt;&lt;td style="padding-bottom: 1pt; white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&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; padding-bottom: 2.5pt"&gt;Net deferred tax liability&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;(137,827&lt;/td&gt;&lt;td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 2pt; 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;(177,828&lt;/td&gt;&lt;td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 2pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

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

&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;In assessing the realization of deferred tax
assets, management considers whether it is more likely than not that some portion or all of the deferred tax assets will be realized.
The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income during the periods in which
those temporary differences become deductible. Management considers the scheduled reversal of deferred tax liabilities, projected future
taxable income, and tax planning strategies in making this assessment. Based upon the level of historical taxable income and projection
for future taxable income over the period in which the deferred tax assets are deductible, management believes it is more likely than
not that the Company will realize the benefits of these temporary differences without consideration of a valuation allowance.&lt;/p&gt;

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

&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;As the result of the implementation of the FASB
interpretation No. 48 (&#x201c;FIN 48&#x201d;), Accounting for Uncertainty in Income Taxes &#x2013; An Interpretation of FASB Statement No.
109, the Company recognized no material adjustments to unrecognized tax benefits. As of June 30, 2023 and 2022, the Company has no unrecognized
tax benefits.&lt;/p&gt;&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&#160;&lt;/p&gt;&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;The Company recognizes interest and penalties
in general and administrative expense. As of June 30, 2023 and 2022, the Company has not recorded any provision for accrued interest and
penalties.&lt;/p&gt;

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

&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;The Company is subject to taxation in the United
States and various state jurisdictions. The federal tax returns are subject to audit for three years from date of filing unless the return
was audited within that period. In general the majority of state statutes follow similar guidelines. As such, the Company&#x2019;s tax
returns for tax years ending June 30, 2023, 2022, and 2021 remain open to examination by the respective taxing authorities.&lt;/p&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock contextRef="c0">A summary of the components of the provision for income
taxes for the years ended June 30, 2023 and 2022 is as follows:&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"&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;2023&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;2022&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: 74%; text-align: left"&gt;Current tax expense - federal&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: 10%; text-align: right"&gt;1,059,743&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: 10%; text-align: right"&gt;313,705&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;Current tax expense - state&lt;/td&gt;&lt;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,595&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,978&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;Deferred tax (benefit) expense&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;(40,002&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;)&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;9,271&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; padding-left: 0.5in"&gt;Provision for income taxes&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;1,029,336&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;327,954&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:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentFederalTaxExpenseBenefit contextRef="c0" decimals="0" unitRef="usd">1059743</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit contextRef="c5" decimals="0" unitRef="usd">313705</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit contextRef="c0" decimals="0" unitRef="usd">9595</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit contextRef="c5" decimals="0" unitRef="usd">4978</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <esp:DeferredIncomeTaxesExpenseBenefit contextRef="c0" decimals="0" unitRef="usd">-40002</esp:DeferredIncomeTaxesExpenseBenefit>
    <esp:DeferredIncomeTaxesExpenseBenefit contextRef="c5" decimals="0" unitRef="usd">9271</esp:DeferredIncomeTaxesExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c0" decimals="0" unitRef="usd">1029336</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c5" decimals="0" unitRef="usd">327954</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock contextRef="c0">The combined U.S. federal and state effective
income tax rates&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 90%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;"&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;2023&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;2022&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: 74%; text-align: left"&gt;U.S. federal statutory income tax rate&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: 10%; text-align: right"&gt;21.0&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;%&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: 10%; text-align: right"&gt;21.0&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 0pt; text-align: left"&gt;Increase (reduction) in rate resulting from:&lt;/td&gt;&lt;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-left: 20pt; text-align: left"&gt;State franchise tax, net of federal income tax benefit&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.2&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;0.3&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; text-align: left"&gt;ESOP cost versus Fair Market Value&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(0.2&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.3&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; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 20pt; text-align: left"&gt;Dividend on allocated 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;&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;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(3.1&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; text-align: left"&gt;Stock-based compensation&lt;/td&gt;&lt;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.0&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.0&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; text-align: left"&gt;Rate Differential on Net Operating Loss Carryback&lt;/td&gt;&lt;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-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;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(0.1&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; padding-bottom: 1pt"&gt;Other&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;(0.1&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;)&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;(0.2&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Effective tax rate&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;21.9&lt;/td&gt;&lt;td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 1.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;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;20.6&lt;/td&gt;&lt;td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 1.5pt; text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <esp:USFederalStatutoryIncomeTaxRate contextRef="c0" decimals="3" unitRef="pure">0.21</esp:USFederalStatutoryIncomeTaxRate>
    <esp:USFederalStatutoryIncomeTaxRate contextRef="c5" decimals="3" unitRef="pure">0.21</esp:USFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes contextRef="c0" decimals="3" unitRef="pure">0.002</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes contextRef="c5" decimals="3" unitRef="pure">0.003</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <esp:EffectiveIncomeTaxRateReconciliationESOPFairValue contextRef="c0" decimals="3" unitRef="pure">-0.002</esp:EffectiveIncomeTaxRateReconciliationESOPFairValue>
    <esp:EffectiveIncomeTaxRateReconciliationESOPFairValue contextRef="c5" decimals="3" unitRef="pure">-0.013</esp:EffectiveIncomeTaxRateReconciliationESOPFairValue>
    <us-gaap:EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends contextRef="c5" decimals="3" unitRef="pure">-0.031</us-gaap:EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends>
    <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost contextRef="c0" decimals="3" unitRef="pure">0.01</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost contextRef="c5" decimals="3" unitRef="pure">0.04</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <esp:EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback contextRef="c5" decimals="3" unitRef="pure">-0.001</esp:EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments contextRef="c0" decimals="3" unitRef="pure">-0.001</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments contextRef="c5" decimals="3" unitRef="pure">-0.002</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations contextRef="c0" decimals="3" unitRef="pure">0.219</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations contextRef="c5" decimals="3" unitRef="pure">0.206</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock contextRef="c0">deferred tax assets and deferred tax liabilities as of June
30, 2023 and 2022 are presented as follows:&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 90%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;"&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;2023&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;2022&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-align: left"&gt;Deferred tax assets:&lt;/td&gt;&lt;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; width: 74%; text-align: left"&gt;Accrued expenses&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: 10%; text-align: right"&gt;273,059&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: 10%; text-align: right"&gt;204,774&lt;/td&gt;&lt;td style="white-space: nowrap; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 20pt"&gt;ESOP&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;24,407&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;14,237&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; text-align: left"&gt;Stock-based compensation&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;36,552&lt;/td&gt;&lt;td style="padding-bottom: 1pt; white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;33,719&lt;/td&gt;&lt;td style="padding-bottom: 1pt; white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 40pt; text-align: left; padding-bottom: 1pt"&gt;Total deferred tax assets&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;334,018&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;252,730&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"&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;Deferred tax liability:&lt;/td&gt;&lt;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; text-align: left"&gt;Property, plant and equipment - principally due to differences in depreciation methods&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;337,501&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;374,566&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; text-align: left"&gt;Inventory - effect of uniform capitalization&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;99,215&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;19,276&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; text-align: left; padding-bottom: 1pt"&gt;Prepaid expenses&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;35,129&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;36,716&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="padding-bottom: 1pt; padding-left: 40pt; text-align: left"&gt;Total deferred tax liability&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;471,845&lt;/td&gt;&lt;td style="padding-bottom: 1pt; white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;430,558&lt;/td&gt;&lt;td style="padding-bottom: 1pt; white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&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; padding-bottom: 2.5pt"&gt;Net deferred tax liability&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;(137,827&lt;/td&gt;&lt;td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 2pt; 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;(177,828&lt;/td&gt;&lt;td style="vertical-align: bottom; white-space: nowrap; padding-bottom: 2pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;</us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities contextRef="c3" decimals="0" unitRef="usd">273059</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities contextRef="c4" decimals="0" unitRef="usd">204774</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther contextRef="c3" decimals="0" unitRef="usd">24407</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther contextRef="c4" decimals="0" unitRef="usd">14237</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost contextRef="c3" decimals="0" unitRef="usd">36552</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost contextRef="c4" decimals="0" unitRef="usd">33719</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsGross contextRef="c3" decimals="0" unitRef="usd">334018</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsGross contextRef="c4" decimals="0" unitRef="usd">252730</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment contextRef="c3" decimals="0" unitRef="usd">337501</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment contextRef="c4" decimals="0" unitRef="usd">374566</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts contextRef="c3" decimals="0" unitRef="usd">99215</us-gaap:DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts>
    <us-gaap:DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts contextRef="c4" decimals="0" unitRef="usd">19276</us-gaap:DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts>
    <us-gaap:DeferredTaxLiabilitiesPrepaidExpenses contextRef="c3" decimals="0" unitRef="usd">35129</us-gaap:DeferredTaxLiabilitiesPrepaidExpenses>
    <us-gaap:DeferredTaxLiabilitiesPrepaidExpenses contextRef="c4" decimals="0" unitRef="usd">36716</us-gaap:DeferredTaxLiabilitiesPrepaidExpenses>
    <us-gaap:DeferredIncomeTaxLiabilities contextRef="c3" decimals="0" unitRef="usd">471845</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredIncomeTaxLiabilities contextRef="c4" decimals="0" unitRef="usd">430558</us-gaap:DeferredIncomeTaxLiabilities>
    <esp:DeferredTaxAssetLiability contextRef="c3" decimals="0" unitRef="usd">-137827</esp:DeferredTaxAssetLiability>
    <esp:DeferredTaxAssetLiability contextRef="c4" decimals="0" unitRef="usd">-177828</esp:DeferredTaxAssetLiability>
    <esp:SignificantCustomersTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0pt"&gt;Note 9. Significant
Customers&lt;/p&gt;

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

&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;A significant portion of the
Company's business is the production of military and industrial electronic equipment for use by the U.S. and foreign governments and
certain industrial customers. Sales to five domestic customers accounted for 81% of total sales in 2023. Sales to four domestic
customers accounted for 57% of total sales in 2022. The related accounts receivable balance, as a percentage of the Company's total
trade accounts receivable balance, was 81% represented by five customers at June 30, 2023 and 74% represented by four customers at
June 30, 2022.&lt;/p&gt;

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

&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;Export sales in fiscal years
2023 and 2022 were approximately $549,510 and $1,644,000, respectively.&lt;/p&gt;</esp:SignificantCustomersTextBlock>
    <esp:ConcentrationRiskPercentageOne contextRef="c61" decimals="INF" unitRef="pure">0.81</esp:ConcentrationRiskPercentageOne>
    <esp:ConcentrationRiskPercentageOne contextRef="c62" decimals="INF" unitRef="pure">0.57</esp:ConcentrationRiskPercentageOne>
    <esp:ConcentrationRiskPercentageOne contextRef="c63" decimals="INF" unitRef="pure">0.81</esp:ConcentrationRiskPercentageOne>
    <esp:ConcentrationRiskPercentageOne contextRef="c64" decimals="INF" unitRef="pure">0.74</esp:ConcentrationRiskPercentageOne>
    <us-gaap:SalesTypeLeaseRevenue contextRef="c65" decimals="0" unitRef="usd">549510</us-gaap:SalesTypeLeaseRevenue>
    <us-gaap:SalesTypeLeaseRevenue contextRef="c66" decimals="0" unitRef="usd">1644000</us-gaap:SalesTypeLeaseRevenue>
    <esp:EmployeeStockOwnershipPlanTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0pt"&gt;Note 10. Employee
Stock Ownership Plan&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 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 statement of financial position. 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. The ESOP borrowed from the Corporation an amount equal to the purchase
price.&#160; The loan will be repaid in fifteen (15) equal annual installments of principal commencing June 2021.&#160; The Board of
Directors has fixed the interest rate and the unpaid balance will bear interest at a fixed rate of 3.00% per annum. ESOP compensation
expense was $365,646 and $325,067 for the years ended June 30, 2023 and 2022, respectively.&lt;/p&gt;

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



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

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

&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"&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;2023&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;2022&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: 74%; 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: 10%; text-align: right"&gt;484,958&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: 10%; text-align: right"&gt;496,091&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;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;233,645&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;256,293&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total 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;718,603&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;752,384&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="padding-left: 10pt; 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;3,913,554&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,649,612&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: 0; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;The Company may at times be required to repurchase
shares at the ESOP participants&#x2019; request at the fair market value. During the twelve months ended June 30, 2023 and 2022, the Company
did not repurchase shares previously held by the ESOP.&lt;/p&gt;&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 twelve months ended June 30, 2023 and 2022 totaled 33,780 shares and 14,265 shares, respectively.&lt;/p&gt;</esp:EmployeeStockOwnershipPlanTextBlock>
    <us-gaap:EmployeeStockOwnershipPlanESOPPlanDescription contextRef="c0">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.</us-gaap:EmployeeStockOwnershipPlanESOPPlanDescription>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage contextRef="c67" decimals="4" unitRef="pure">0.03</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense contextRef="c68" decimals="0" unitRef="usd">365646</us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense>
    <us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense contextRef="c69" decimals="0" unitRef="usd">325067</us-gaap:EmployeeStockOwnershipPlanESOPCompensationExpense>
    <us-gaap:ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock contextRef="c0">The ESOP shares as of June 30, 2023
and 2022 were as follows:&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"&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;2023&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;2022&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: 74%; 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: 10%; text-align: right"&gt;484,958&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: 10%; text-align: right"&gt;496,091&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;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;233,645&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;256,293&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total 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;718,603&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;752,384&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="padding-left: 10pt; 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;3,913,554&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,649,612&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="c3" decimals="INF" unitRef="shares">484958</us-gaap:EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares>
    <us-gaap:EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares contextRef="c4" decimals="INF" unitRef="shares">496091</us-gaap:EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares>
    <us-gaap:EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares contextRef="c3" decimals="INF" unitRef="shares">233645</us-gaap:EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares>
    <us-gaap:EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares contextRef="c4" decimals="INF" unitRef="shares">256293</us-gaap:EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares>
    <us-gaap:EmployeeStockOwnershipPlanESOPSharesInESOP contextRef="c3" decimals="INF" unitRef="shares">718603</us-gaap:EmployeeStockOwnershipPlanESOPSharesInESOP>
    <us-gaap:EmployeeStockOwnershipPlanESOPSharesInESOP contextRef="c4" decimals="INF" unitRef="shares">752384</us-gaap:EmployeeStockOwnershipPlanESOPSharesInESOP>
    <us-gaap:EmployeeStockOwnershipPlanESOPDeferredSharesFairValue contextRef="c3" decimals="0" unitRef="usd">3913554</us-gaap:EmployeeStockOwnershipPlanESOPDeferredSharesFairValue>
    <us-gaap:EmployeeStockOwnershipPlanESOPDeferredSharesFairValue contextRef="c4" decimals="0" unitRef="usd">3649612</us-gaap:EmployeeStockOwnershipPlanESOPDeferredSharesFairValue>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan contextRef="c68" decimals="INF" unitRef="shares">33780</us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan contextRef="c69" decimals="INF" unitRef="shares">14265</us-gaap:StockIssuedDuringPeriodSharesEmployeeBenefitPlan>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-indent: 0pt"&gt;Note 11. Stock-based Compensation&lt;/p&gt;

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

&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&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. Included as a reduction to the cost recognized for share-based payments is an estimate for option
forfeitures. It is the Company&#x2019;s policy to estimate expected option forfeitures based on historical experience. Actual forfeitures
are adjusted prior to the vesting date if the impact is material.&lt;/p&gt;

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

&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;Total stock-based compensation expense recognized
in the statements of comprehensive income for the fiscal years ended June 30, 2023 and 2022, was $227,132 and $176,696, respectively,
before income taxes. The amount of this stock-based compensation expense related to non-qualified stock options (&#x201c;NQSO&#x201d;) for
the fiscal years ended June 30, 2023 and 2022, was $21,432 and $29,287, respectively. The deferred tax benefit related to the NQSO&#x2019;s
as of June 30, 2023 and 2022 was approximately $4,501 and $6,150, respectively. The remaining stock option expense, in each year, related
to incentive stock options (&#x201c;ISO&#x201d;) which are not deductible by the corporation 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="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;As of June 30, 2023, there was approximately $155,154
of unrecognized compensation cost related to stock option awards that is expected to be recognized as expense over the next 2 years, of
which $128,766 relates to ISO&#x2019;s and $26,388 relates to NQSO&#x2019;s. The total deferred tax benefit related the NQSO&#x2019;s in
future years will be $5,541.&lt;/p&gt;

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

&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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"), approved by the Company's shareholders at the Company's Annual Meeting on December 1, 2017. 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 June 30, 2023, options covering 382,104 shares have been granted, of which
245,831 are outstanding, and 136,273 shares have been cancelled. As of June 30, 2023, option covering 154,169 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 June 30, 2023, 50,500 options were
outstanding under such plan of which all are vested and exercisable.&lt;/p&gt;

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

&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 volatility, expected life, and interest rates.&lt;/p&gt;&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&#160;&lt;/p&gt;&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 year ended June 30, 2023 and 2022.&lt;/p&gt;

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

&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"&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="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td 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;td style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;2022&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 78%; text-align: left; text-indent: 0in"&gt;Dividend yield&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 10%; text-align: right"&gt;0.03%&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 10%; text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-14"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="text-align: left"&gt;Expected stock price volatility&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;27.20%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;25.60%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Risk-free interest rate&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;2.71%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;0.99%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="text-align: left"&gt;Expected option life (in years)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;5.4yrs&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;5.4yrs&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt; text-indent: -10pt"&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: right"&gt;$4.18&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;$3.74&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;


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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"&gt;Effective March 13, 2023, the Company reinstated
payment of a quarterly dividend. The Company paid regular cash dividends on common stock of $0.20 per share for the fiscal year
ended June 30, 2023 and paid no cash dividends for the fiscal year ended June 30, 2022. 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: 0; text-align: justify"&gt;&#160;&lt;/p&gt;

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

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

&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"&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="15" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center"&gt;Employee Stock Options Plan&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 style="text-align: center"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Weighted&lt;/td&gt;&lt;td style="text-align: center"&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 style="text-align: center"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Weighted&lt;/td&gt;&lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Average&lt;/td&gt;&lt;td style="text-align: center"&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 style="text-align: center"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Average&lt;/td&gt;&lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Remaining&lt;/td&gt;&lt;td style="text-align: center"&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 style="text-align: center"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Exercise&lt;/td&gt;&lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Contractual&lt;/td&gt;&lt;td style="text-align: center"&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&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center"&gt;to Option&lt;/td&gt;&lt;td style="text-align: center; border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center"&gt;Price&lt;/td&gt;&lt;td style="text-align: center; border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center"&gt;Term&lt;/td&gt;&lt;td style="text-align: center; border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center"&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: 49%"&gt;Balance at July 1, 2022&lt;/td&gt;&lt;td style="width: 3%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 3%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 5%; text-align: right"&gt;246,273&lt;/td&gt;&lt;td style="white-space: nowrap; width: 3%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 3%; text-align: right"&gt;$&lt;/td&gt;&lt;td style="width: 5%; text-align: right"&gt;20.89&lt;/td&gt;&lt;td style="white-space: nowrap; width: 3%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 3%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 5%; text-align: right"&gt;6.73&lt;/td&gt;&lt;td style="white-space: nowrap; width: 3%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 3%; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="width: 5%; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; width: 4%; 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;74,200&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: right"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;13.81&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.12&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: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Exercised&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-15"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&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;&lt;div style="-sec-ix-hidden: hidden-fact-17"&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: right"&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&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;(24,142&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: right"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;20.46&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-18"&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: right"&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 June 30, 2023&lt;/td&gt;&lt;td&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;296,331&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: right"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;19.15&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.49&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: right"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;338,243&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 June 30, 2023&lt;/td&gt;&lt;td&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;283,745&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: right"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;19.40&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.38&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;298,723&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 June 30, 2023&lt;/td&gt;&lt;td&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;163,731&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: right"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;23.13&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;4.74&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: right"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;0&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="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; 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 June 30, 2023 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 June 30, 2023. This amount changes based
on the fair market value of the Company&#x2019;s common stock. The total intrinsic values of the options exercised during the twelve months
ended June 30, 2023 and 2022 was $0.&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; text-indent: 0pt; margin: 0pt; text-align: justify"&gt;&#160;&lt;/p&gt;&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt"&gt;The following table summarizes changes in non-vested stock options
during the twelve months ended June 30, 2023:&lt;/p&gt;

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

&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"&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="vertical-align: bottom; white-space: nowrap; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center"&gt;Weighted&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&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="vertical-align: bottom; white-space: nowrap; text-align: center"&gt;Number of&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center"&gt;Average&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&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="vertical-align: bottom; white-space: nowrap; text-align: center"&gt;Shares&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center"&gt;Grant Date&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&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="vertical-align: bottom; white-space: nowrap; text-align: center"&gt;Subject&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center"&gt;Fair Value&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&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="vertical-align: bottom; white-space: nowrap; text-align: center; border-bottom: Black 1pt solid"&gt;to Option&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center; border-bottom: Black 1pt solid"&gt;(per Option)&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom"&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: 74%"&gt;Non-Vested at July 1, 2022&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: 10%; text-align: right"&gt;104,175&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: 10%; text-align: right"&gt;2.92&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;74,200&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.18&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;(34,075&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.59&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="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;(11,700&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;)&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.75&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="padding-bottom: 2.5pt"&gt;Non-Vested at June 30, 2023&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;132,600&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.98&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:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c0" decimals="0" unitRef="usd">227132</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c5" decimals="0" unitRef="usd">176696</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c70" decimals="0" unitRef="usd">21432</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c71" decimals="0" unitRef="usd">29287</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense contextRef="c0" decimals="0" unitRef="usd">4501</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense contextRef="c5" decimals="0" unitRef="usd">6150</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions contextRef="c3" decimals="0" unitRef="usd">155154</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1 contextRef="c5">P2Y</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions contextRef="c72" decimals="0" unitRef="usd">128766</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions contextRef="c73" decimals="0" unitRef="usd">26388</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
    <esp:DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts contextRef="c3" decimals="0" unitRef="usd">5541</esp:DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized contextRef="c74" decimals="INF" unitRef="shares">133000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <esp:NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear contextRef="c74" decimals="INF" unitRef="shares">13300</esp:NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear>
    <esp:PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear contextRef="c75">33 1/3%</esp:PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear>
    <esp:NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear contextRef="c76" decimals="INF" unitRef="shares">15000</esp:NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 contextRef="c77">P2Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized contextRef="c78" decimals="INF" unitRef="shares">400000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant contextRef="c78" decimals="INF" unitRef="shares">382104</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <esp:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber contextRef="c79" decimals="INF" unitRef="shares">245831</esp:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod contextRef="c79" decimals="INF" unitRef="shares">136273</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant contextRef="c3" decimals="0" unitRef="shares">154169</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <esp:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber contextRef="c80" decimals="INF" unitRef="shares">50500</esp:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock contextRef="c0">The table below outlines the weighted average assumptions
that the Company used to calculate the fair value of each option award for the year ended June 30, 2023 and 2022.&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"&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="padding-bottom: 1pt"&gt;&#160;&lt;/td&gt;
    &lt;td 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;td style="white-space: nowrap; text-align: right; border-bottom: Black 1pt solid"&gt;2022&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 78%; text-align: left; text-indent: 0in"&gt;Dividend yield&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 10%; text-align: right"&gt;0.03%&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 10%; text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-14"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="text-align: left"&gt;Expected stock price volatility&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;27.20%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;25.60%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Risk-free interest rate&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;2.71%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;0.99%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="text-align: left"&gt;Expected option life (in years)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;5.4yrs&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;5.4yrs&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt; text-indent: -10pt"&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: right"&gt;$4.18&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&gt;$3.74&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate contextRef="c0" decimals="4" unitRef="pure">0.0003</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate contextRef="c0" decimals="4" unitRef="pure">0.272</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate contextRef="c5" decimals="4" unitRef="pure">0.256</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate contextRef="c0" decimals="4" unitRef="pure">0.0271</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate contextRef="c5" decimals="4" unitRef="pure">0.0099</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1 contextRef="c0">P5Y4M24D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1 contextRef="c5">P5Y4M24D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue contextRef="c0" decimals="2" unitRef="usdPershares">4.18</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue contextRef="c5" decimals="2" unitRef="usdPershares">3.74</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:CommonStockDividendsPerShareDeclared contextRef="c70" decimals="2" unitRef="usdPershares">0.2</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock contextRef="c0">The following table summarizes stock option
activity during the twelve months ended June 30, 2023:&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"&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="15" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center"&gt;Employee Stock Options Plan&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 style="text-align: center"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Weighted&lt;/td&gt;&lt;td style="text-align: center"&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 style="text-align: center"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Weighted&lt;/td&gt;&lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Average&lt;/td&gt;&lt;td style="text-align: center"&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 style="text-align: center"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Average&lt;/td&gt;&lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Remaining&lt;/td&gt;&lt;td style="text-align: center"&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 style="text-align: center"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Exercise&lt;/td&gt;&lt;td style="text-align: center"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="white-space: nowrap; text-align: center"&gt;Contractual&lt;/td&gt;&lt;td style="text-align: center"&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&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center"&gt;to Option&lt;/td&gt;&lt;td style="text-align: center; border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center"&gt;Price&lt;/td&gt;&lt;td style="text-align: center; border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center"&gt;Term&lt;/td&gt;&lt;td style="text-align: center; border-bottom: Black 1pt solid"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="3" style="border-bottom: Black 1pt solid; white-space: nowrap; text-align: center"&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: 49%"&gt;Balance at July 1, 2022&lt;/td&gt;&lt;td style="width: 3%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 3%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 5%; text-align: right"&gt;246,273&lt;/td&gt;&lt;td style="white-space: nowrap; width: 3%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 3%; text-align: right"&gt;$&lt;/td&gt;&lt;td style="width: 5%; text-align: right"&gt;20.89&lt;/td&gt;&lt;td style="white-space: nowrap; width: 3%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 3%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 5%; text-align: right"&gt;6.73&lt;/td&gt;&lt;td style="white-space: nowrap; width: 3%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 3%; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="width: 5%; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; width: 4%; 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;74,200&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: right"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;13.81&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.12&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: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Exercised&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-15"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: right"&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;&lt;div style="-sec-ix-hidden: hidden-fact-17"&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: right"&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&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;(24,142&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: right"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1pt solid; text-align: right"&gt;20.46&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-18"&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: right"&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 June 30, 2023&lt;/td&gt;&lt;td&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;296,331&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: right"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;19.15&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.49&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: right"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;338,243&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 June 30, 2023&lt;/td&gt;&lt;td&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;283,745&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: right"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;19.40&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.38&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;298,723&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 June 30, 2023&lt;/td&gt;&lt;td&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;163,731&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: right"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;23.13&lt;/td&gt;&lt;td style="white-space: nowrap; border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;4.74&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: right"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;0&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="c4" decimals="0" unitRef="shares">246273</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice contextRef="c4" decimals="2" unitRef="usdPershares">20.89</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2 contextRef="c0">P6Y8M23D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross contextRef="c0" decimals="0" unitRef="shares">74200</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice contextRef="c0" decimals="2" unitRef="usdPershares">13.81</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <esp:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm contextRef="c0">P9Y1M13D</esp:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod contextRef="c0" decimals="0" unitRef="shares">24142</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice contextRef="c0" decimals="2" unitRef="usdPershares">20.46</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="c3" decimals="0" unitRef="shares">296331</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice contextRef="c3" decimals="2" unitRef="usdPershares">19.15</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1 contextRef="c0">P6Y5M26D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue contextRef="c3" decimals="0" unitRef="usd">338243</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber contextRef="c3" decimals="0" unitRef="shares">283745</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice contextRef="c3" decimals="2" unitRef="usdPershares">19.4</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1 contextRef="c0">P6Y4M17D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue contextRef="c3" decimals="0" unitRef="usd">298723</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber contextRef="c3" decimals="0" unitRef="shares">163731</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice contextRef="c3" decimals="2" unitRef="usdPershares">23.13</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2 contextRef="c0">P4Y8M26D</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue contextRef="c3" decimals="0" unitRef="usd">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue contextRef="c0" decimals="0" unitRef="usd">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue contextRef="c5" decimals="0" unitRef="usd">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock contextRef="c0">The following table summarizes changes in non-vested stock options
during the twelve months ended June 30, 2023:&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"&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="vertical-align: bottom; white-space: nowrap; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center"&gt;Weighted&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&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="vertical-align: bottom; white-space: nowrap; text-align: center"&gt;Number of&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center"&gt;Average&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&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="vertical-align: bottom; white-space: nowrap; text-align: center"&gt;Shares&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center"&gt;Grant Date&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&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="vertical-align: bottom; white-space: nowrap; text-align: center"&gt;Subject&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center"&gt;Fair Value&lt;/td&gt;&lt;td style="text-align: center; vertical-align: bottom"&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="vertical-align: bottom; white-space: nowrap; text-align: center; border-bottom: Black 1pt solid"&gt;to Option&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="vertical-align: bottom; white-space: nowrap; text-align: center; border-bottom: Black 1pt solid"&gt;(per Option)&lt;/td&gt;&lt;td style="text-align: center; padding-bottom: 1pt; vertical-align: bottom"&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: 74%"&gt;Non-Vested at July 1, 2022&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: 10%; text-align: right"&gt;104,175&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: 10%; text-align: right"&gt;2.92&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;74,200&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.18&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;(34,075&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.59&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="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;(11,700&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;)&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.75&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="padding-bottom: 2.5pt"&gt;Non-Vested at June 30, 2023&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;132,600&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.98&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:ScheduleOfNonvestedShareActivityTableTextBlock>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares contextRef="c4" decimals="INF" unitRef="shares">104175</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue contextRef="c4" decimals="INF" unitRef="usdPershares">2.92</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross contextRef="c0" decimals="INF" unitRef="shares">74200</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue contextRef="c0" decimals="INF" unitRef="usdPershares">4.18</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares contextRef="c0" decimals="INF" unitRef="shares">34075</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue contextRef="c0" decimals="INF" unitRef="usdPershares">1.59</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares contextRef="c0" decimals="INF" unitRef="shares">11700</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue contextRef="c0" decimals="INF" unitRef="usdPershares">2.75</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares contextRef="c3" decimals="INF" unitRef="shares">132600</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue contextRef="c3" decimals="INF" unitRef="usdPershares">3.98</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ConcentrationRiskDisclosureTextBlock contextRef="c0">&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt"&gt;Note 12. Concentration of Credit Risk&lt;/p&gt;

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

&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;Financial instruments that potentially subject the
Company to concentrations of credit risk consist principally of cash and cash equivalents, short-term investments and accounts receivable.
The Company maintains cash and cash equivalents with various financial institutions. At times such investments may be in excess of FDIC
insurance limits. As disclosed in Note 9, a significant portion of the Company's business is the production of military and industrial
electronic equipment for use by the U.S. and foreign governments and certain industrial customers. The related accounts receivable balance,
as a percentage of the Company's total trade accounts receivable balance, was 81% represented by five customers at June 30, 2023 and 74%
represented by four customers at June 30, 2022.&lt;/p&gt;

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

&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;Although the Company's exposure to credit risk
associated with nonpayment of these concentrated balances is affected by the conditions or occurrences within the U.S. and foreign governments,
the Company believes that its trade accounts receivable credit risk exposure is limited. The Company performs ongoing credit evaluations
of its customer's financial conditions and requires collateral, such as progress payments, in certain circumstances. The Company establishes
an allowance for doubtful accounts based upon factors surrounding the credit risk of specific customers, historical trends and other information.&lt;/p&gt;</us-gaap:ConcentrationRiskDisclosureTextBlock>
    <esp:ConcentrationRiskPercentageOne contextRef="c81" decimals="INF" unitRef="pure">0.81</esp:ConcentrationRiskPercentageOne>
    <esp:ConcentrationRiskNumberOfCustomers contextRef="c81" decimals="INF" unitRef="pure">5</esp:ConcentrationRiskNumberOfCustomers>
    <esp:ConcentrationRiskPercentageOne contextRef="c82" decimals="INF" unitRef="pure">0.74</esp:ConcentrationRiskPercentageOne>
    <esp:ConcentrationRiskNumberOfCustomers contextRef="c82" decimals="INF" unitRef="pure">4</esp:ConcentrationRiskNumberOfCustomers>
    <us-gaap:RelatedPartyTransactionsDisclosureTextBlock contextRef="c0">&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;Note 13. Related Parties&lt;/p&gt;

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

&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;The administration of the
shares of common stock held by the ESOP Trust is subject to the Espey Mfg. &amp;amp; Electronics Corp. Employee Retirement Plan and
Trust (ESOP) and a Trust Agreement, each effective as of July 1, 2016. The Trustees&#x2019; rights with respect to the disposition of
shares are governed by the terms of the Plan and the Trust Agreement. As to shares that have been allocated to the accounts of
participants in the ESOP Trust, the Plan provides that the Trustees are required to vote such shares in accordance with instructions
received from the participants. As to unallocated shares and allocated shares for which voting instructions have not been received
from participants, the Plan provides that the Trustees are required to vote such shares in accordance with the direction of the
Board of Directors of the Company under the terms of the Plan and Trust Agreement, which is
currently in the same proportion as the instructions received on the allocated shares. See Note 10 for additional information
regarding the ESOP.&lt;/p&gt;</us-gaap:RelatedPartyTransactionsDisclosureTextBlock>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock contextRef="c0">&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify; text-indent: 0pt"&gt;Note 14. Commitments
and Contingencies&lt;/p&gt;

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

&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;The Company at certain times
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
June 30, 2023 and 2022. 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="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;&#160;&lt;/p&gt;&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;We are party to various litigation matters and claims
arising from time to time in the ordinary course of business. While the results of such matters cannot be predicted with certainty,
we believe that the final outcome of such matters will not have a material adverse effect on our business, financial condition, results
of operations or cash flows. Currently, there are no matters pending.&lt;/p&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:LossContingencyAccrualAtCarryingValue contextRef="c83" decimals="0" unitRef="usd">0</us-gaap:LossContingencyAccrualAtCarryingValue>
    <us-gaap:LossContingencyAccrualAtCarryingValue contextRef="c84" decimals="0" unitRef="usd">0</us-gaap:LossContingencyAccrualAtCarryingValue>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock contextRef="c0">&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;Note 15. Stockholders' Equity&lt;/p&gt;

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

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

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

&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;The Company has reserved common shares for future
issuance as follows as of June 30, 2023:&lt;/p&gt;

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

&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 80%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 87%; text-align: left"&gt;Stock options outstanding&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: 10%; text-align: right"&gt;296,331&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; padding-bottom: 1pt"&gt;Stock options available for issuance&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;154,169&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="padding-bottom: 2.5pt"&gt;Number of common shares reserved&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;450,500&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; text-indent: 0pt; text-align: justify"&gt;&#160;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-indent: 0pt; 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 years ended
June 30:&lt;/p&gt;

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

&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;"&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;2023&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;2022&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;Numerator:&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;&#160;&lt;/td&gt;&lt;td&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: 74%; 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: 10%; border-bottom: Black 2.5pt double; text-align: right"&gt;3,677,131&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: 10%; border-bottom: Black 2.5pt double; text-align: right"&gt;1,265,127&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; "&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&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 style="font-family: Courier New, Courier, Monospace"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-family: Courier New, Courier, Monospace; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: Courier New, Courier, Monospace; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; font-family: Courier New, Courier, Monospace; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: Courier New, Courier, Monospace"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-family: Courier New, Courier, Monospace; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: Courier New, Courier, Monospace; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; font-family: Courier New, Courier, Monospace; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="text-indent: -10pt; padding-left: 30pt; text-align: left"&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,702,633&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="text-indent: -10pt; padding-left: 30pt; text-align: left"&gt;Common shares issued to ESOP 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;&lt;div style="-sec-ix-hidden: hidden-fact-19"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-20"&gt;&#x2014;&lt;/div&gt;&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-indent: -10pt; padding-left: 30pt"&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;(256,293&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;(279,429&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; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-indent: -10pt; padding-left: 30pt"&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;&lt;div style="-sec-ix-hidden: hidden-fact-21"&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;&lt;div style="-sec-ix-hidden: hidden-fact-22"&gt;&#x2014;&lt;/div&gt;&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-indent: -10pt; padding-left: 30pt"&gt;Weighted average common shares purchased 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;&lt;div style="-sec-ix-hidden: hidden-fact-23"&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;&lt;div style="-sec-ix-hidden: hidden-fact-24"&gt;&#x2014;&lt;/div&gt;&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-indent: -10pt; padding-left: 30pt; padding-bottom: 1pt"&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;8,516&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;8,700&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-indent: -10pt; padding-left: 30pt; padding-bottom: 2.5pt"&gt;Denominator for basic earnings per common shares &#x2013; 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,454,856&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,431,904&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-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="text-indent: -10pt; padding-left: 30pt"&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,702,633&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="text-indent: -10pt; padding-left: 30pt; text-align: left"&gt;Common shares issued to ESOP 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;&lt;div style="-sec-ix-hidden: hidden-fact-25"&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;&lt;div style="-sec-ix-hidden: hidden-fact-26"&gt;&#x2014;&lt;/div&gt;&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-indent: -10pt; padding-left: 30pt"&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;(256,293&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;(279,429&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; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-indent: -10pt; padding-left: 30pt"&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;&lt;div style="-sec-ix-hidden: hidden-fact-27"&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;&lt;div style="-sec-ix-hidden: hidden-fact-28"&gt;&#x2014;&lt;/div&gt;&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-indent: -10pt; padding-left: 30pt"&gt;Weighted average common shares purchased 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;&lt;div style="-sec-ix-hidden: hidden-fact-29"&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;&lt;div style="-sec-ix-hidden: hidden-fact-30"&gt;&#x2014;&lt;/div&gt;&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-indent: -10pt; padding-left: 30pt"&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;8,516&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;8,700&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-indent: -10pt; padding-left: 30pt; padding-bottom: 1pt"&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;16,160&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-31"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-indent: -10pt; padding-left: 30pt; padding-bottom: 2.5pt"&gt;Denominator for diluted earnings per common shares &#x2013; 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,471,016&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,431,904&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: 0; text-align: justify"&gt;&#160;&lt;/p&gt;&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-indent: 0pt; text-align: justify"&gt;Not included in this computation of earnings
per share for the year ended June 30, 2023 and 2022 were options to purchase 130,656 and 246,273 shares, respectively, of the Company&#x2019;s
common stock. These options were excluded because their inclusion would have been anti-dilutive due to the average strike price exceeding
the average market price of those shares.&lt;/p&gt;

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

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-indent: 0pt; text-align: justify"&gt;Effective March 13, 2023, the
Company reinstated payment of a quarterly dividend. The Company paid regular cash dividends on common stock of $0.20 per share for the
fiscal year ended June 30, 2023 and paid &lt;span style="-sec-ix-hidden: hidden-fact-32"&gt;no&lt;/span&gt; cash dividends for the fiscal year ended June 30, 2022. Our Board of Directors assesses the
Company&#x2019;s dividend policy periodically. There is no assurance that the Board of Directors will maintain the amount of the regular
cash dividend during any future years.&lt;/p&gt;</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
    <esp:ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock contextRef="c0">The Company has reserved common shares for future
issuance as follows as of June 30, 2023:&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 80%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 87%; text-align: left"&gt;Stock options outstanding&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: 10%; text-align: right"&gt;296,331&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; padding-bottom: 1pt"&gt;Stock options available for issuance&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;154,169&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="padding-bottom: 2.5pt"&gt;Number of common shares reserved&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;450,500&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;</esp:ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="c3" decimals="INF" unitRef="shares">296331</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant contextRef="c3" decimals="INF" unitRef="shares">154169</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance contextRef="c3" decimals="INF" unitRef="shares">450500</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock contextRef="c0">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 years ended
June 30:&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;"&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;2023&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;2022&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;Numerator:&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;&#160;&lt;/td&gt;&lt;td&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: 74%; 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: 10%; border-bottom: Black 2.5pt double; text-align: right"&gt;3,677,131&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: 10%; border-bottom: Black 2.5pt double; text-align: right"&gt;1,265,127&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; "&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&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 style="font-family: Courier New, Courier, Monospace"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-family: Courier New, Courier, Monospace; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: Courier New, Courier, Monospace; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; font-family: Courier New, Courier, Monospace; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: Courier New, Courier, Monospace"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-family: Courier New, Courier, Monospace; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="font-family: Courier New, Courier, Monospace; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="white-space: nowrap; font-family: Courier New, Courier, Monospace; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="text-indent: -10pt; padding-left: 30pt; text-align: left"&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,702,633&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="text-indent: -10pt; padding-left: 30pt; text-align: left"&gt;Common shares issued to ESOP 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;&lt;div style="-sec-ix-hidden: hidden-fact-19"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;div style="-sec-ix-hidden: hidden-fact-20"&gt;&#x2014;&lt;/div&gt;&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-indent: -10pt; padding-left: 30pt"&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;(256,293&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;(279,429&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; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-indent: -10pt; padding-left: 30pt"&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;&lt;div style="-sec-ix-hidden: hidden-fact-21"&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;&lt;div style="-sec-ix-hidden: hidden-fact-22"&gt;&#x2014;&lt;/div&gt;&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-indent: -10pt; padding-left: 30pt"&gt;Weighted average common shares purchased 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;&lt;div style="-sec-ix-hidden: hidden-fact-23"&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;&lt;div style="-sec-ix-hidden: hidden-fact-24"&gt;&#x2014;&lt;/div&gt;&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-indent: -10pt; padding-left: 30pt; padding-bottom: 1pt"&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;8,516&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;8,700&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-indent: -10pt; padding-left: 30pt; padding-bottom: 2.5pt"&gt;Denominator for basic earnings per common shares &#x2013; 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,454,856&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,431,904&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-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="text-indent: -10pt; padding-left: 30pt"&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,702,633&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="text-indent: -10pt; padding-left: 30pt; text-align: left"&gt;Common shares issued to ESOP 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;&lt;div style="-sec-ix-hidden: hidden-fact-25"&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;&lt;div style="-sec-ix-hidden: hidden-fact-26"&gt;&#x2014;&lt;/div&gt;&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-indent: -10pt; padding-left: 30pt"&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;(256,293&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;(279,429&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; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-indent: -10pt; padding-left: 30pt"&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;&lt;div style="-sec-ix-hidden: hidden-fact-27"&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;&lt;div style="-sec-ix-hidden: hidden-fact-28"&gt;&#x2014;&lt;/div&gt;&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-indent: -10pt; padding-left: 30pt"&gt;Weighted average common shares purchased 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;&lt;div style="-sec-ix-hidden: hidden-fact-29"&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;&lt;div style="-sec-ix-hidden: hidden-fact-30"&gt;&#x2014;&lt;/div&gt;&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-indent: -10pt; padding-left: 30pt"&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;8,516&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;8,700&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-indent: -10pt; padding-left: 30pt; padding-bottom: 1pt"&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;16,160&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-31"&gt;&#x2014;&lt;/div&gt;&lt;/td&gt;&lt;td style="white-space: nowrap; padding-bottom: 1pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-indent: -10pt; padding-left: 30pt; padding-bottom: 2.5pt"&gt;Denominator for diluted earnings per common shares &#x2013; 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,471,016&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,431,904&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: 0; text-align: justify"&gt;&#160;&lt;/p&gt;</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss contextRef="c0" decimals="0" unitRef="usd">3677131</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c5" decimals="0" unitRef="usd">1265127</us-gaap:NetIncomeLoss>
    <us-gaap:ExcessStockSharesOutstanding contextRef="c3" decimals="0" unitRef="shares">2702633</us-gaap:ExcessStockSharesOutstanding>
    <us-gaap:ExcessStockSharesOutstanding contextRef="c4" decimals="0" unitRef="shares">2702633</us-gaap:ExcessStockSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased contextRef="c0" decimals="0" unitRef="shares">256293</us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased>
    <us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased contextRef="c5" decimals="0" unitRef="shares">279429</us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased>
    <us-gaap:WeightedAverageNumberOfSharesContingentlyIssuable contextRef="c0" decimals="0" unitRef="shares">8516</us-gaap:WeightedAverageNumberOfSharesContingentlyIssuable>
    <us-gaap:WeightedAverageNumberOfSharesContingentlyIssuable contextRef="c5" decimals="0" unitRef="shares">8700</us-gaap:WeightedAverageNumberOfSharesContingentlyIssuable>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="c0" decimals="0" unitRef="shares">2454856</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="c5" decimals="0" unitRef="shares">2431904</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:ExcessStockSharesOutstanding contextRef="c3" decimals="0" unitRef="shares">2702633</us-gaap:ExcessStockSharesOutstanding>
    <us-gaap:ExcessStockSharesOutstanding contextRef="c4" decimals="0" unitRef="shares">2702633</us-gaap:ExcessStockSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased contextRef="c0" decimals="0" unitRef="shares">256293</us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased>
    <us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased contextRef="c5" decimals="0" unitRef="shares">279429</us-gaap:WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased>
    <us-gaap:WeightedAverageNumberOfSharesContingentlyIssuable contextRef="c0" decimals="0" unitRef="shares">8516</us-gaap:WeightedAverageNumberOfSharesContingentlyIssuable>
    <us-gaap:WeightedAverageNumberOfSharesContingentlyIssuable contextRef="c5" decimals="0" unitRef="shares">8700</us-gaap:WeightedAverageNumberOfSharesContingentlyIssuable>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements contextRef="c0" decimals="0" unitRef="shares">16160</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c0" decimals="0" unitRef="shares">2471016</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c5" decimals="0" unitRef="shares">2431904</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount contextRef="c0" decimals="INF" unitRef="shares">130656</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount contextRef="c5" decimals="INF" unitRef="shares">246273</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:CommonStockDividendsPerShareCashPaid contextRef="c0" decimals="INF" unitRef="usdPershares">0.2</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:DebtDisclosureTextBlock contextRef="c0">&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;Note 16. Line of Credit&lt;/p&gt;

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

&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;At June 30, 2023, the Company has an uncommitted
and unused Line of Credit with a financial institution. The agreement provides that the Company may borrow up to $3,000,000. The line
provides for interest payments equal to the BSBY Daily Floating Rate plus 2 percentage points. Any borrowing under the line of credit
will be collateralized by accounts receivable. All outstanding balances are payable no later than the expiration date of the agreement,
unless other terms are agreed to by the lender. The existing line of credit expires February 28, 2024. The Company did not borrow any
funds during the last two fiscal years.&lt;/p&gt;</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity contextRef="c3" decimals="0" unitRef="usd">3000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1 contextRef="c85" decimals="INF" unitRef="pure">0.02</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:QuarterlyFinancialInformationTextBlock contextRef="c0">&lt;p style="text-indent: 0pt; font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"&gt;Note 17. Quarterly Financial Information (Unaudited)&lt;/p&gt;

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

&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 90%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap; text-align: justify"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;First&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;Second&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;Third&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;Fourth&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; font-weight: bold"&gt;2023&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;Quarter&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;Quarter&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;Quarter&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;Quarter&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: 48%; text-align: left"&gt;Net sales&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: 10%; text-align: right"&gt;8,635,795&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: 10%; text-align: right"&gt;8,804,109&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: 10%; text-align: right"&gt;9,809,616&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: 10%; text-align: right"&gt;8,342,803&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-left: 20pt; text-align: left"&gt;Gross profit&lt;/td&gt;&lt;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,812,142&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,260,722&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;1,973,429&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,004,245&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; text-align: left"&gt;Net income&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;768,266&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;1,146,042&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;867,288&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;895,535&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;Net income per share -&lt;/td&gt;&lt;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 style="padding-left: 10pt"&gt;Basic&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.31&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;0.47&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;0.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;0.37&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 10pt"&gt;Diluted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.31&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;0.47&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;0.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;0.36&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;&#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;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="white-space: nowrap; font-weight: bold"&gt;2022&lt;/td&gt;&lt;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 style="text-align: left"&gt;Net sales&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;7,545,432&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;7,458,050&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;8,620,049&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;8,481,243&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; text-align: left"&gt;Gross profit&lt;/td&gt;&lt;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,353,098&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;1,206,817&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;1,734,880&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;1,177,363&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; text-align: left"&gt;Net income&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;306,061&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;21,201&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;661,359&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;276,506&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;Net income per share -&lt;/td&gt;&lt;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 style="padding-left: 10pt"&gt;Basic&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.13&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;0.01&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;0.27&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;0.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="padding-left: 10pt"&gt;Diluted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.13&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;0.01&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;0.27&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;0.11&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:QuarterlyFinancialInformationTextBlock>
    <us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock contextRef="c0">&lt;table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 90%; font: 10pt Times New Roman, Times, Serif; margin-left: auto; margin-right: auto;"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="white-space: nowrap; text-align: justify"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="white-space: nowrap; text-align: right"&gt;First&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;Second&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;Third&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;Fourth&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; font-weight: bold"&gt;2023&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;Quarter&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;Quarter&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;Quarter&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;Quarter&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: 48%; text-align: left"&gt;Net sales&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: 10%; text-align: right"&gt;8,635,795&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: 10%; text-align: right"&gt;8,804,109&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: 10%; text-align: right"&gt;9,809,616&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: 10%; text-align: right"&gt;8,342,803&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-left: 20pt; text-align: left"&gt;Gross profit&lt;/td&gt;&lt;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,812,142&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,260,722&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;1,973,429&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,004,245&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; text-align: left"&gt;Net income&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;768,266&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;1,146,042&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;867,288&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;895,535&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;Net income per share -&lt;/td&gt;&lt;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 style="padding-left: 10pt"&gt;Basic&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.31&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;0.47&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;0.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;0.37&lt;/td&gt;&lt;td style="white-space: nowrap; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; "&gt;
    &lt;td style="padding-left: 10pt"&gt;Diluted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.31&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;0.47&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;0.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;0.36&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;&#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;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="white-space: nowrap; font-weight: bold"&gt;2022&lt;/td&gt;&lt;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 style="text-align: left"&gt;Net sales&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;7,545,432&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;7,458,050&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;8,620,049&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;8,481,243&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; text-align: left"&gt;Gross profit&lt;/td&gt;&lt;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,353,098&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;1,206,817&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;1,734,880&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;1,177,363&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; text-align: left"&gt;Net income&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;306,061&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;21,201&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;661,359&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;276,506&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;Net income per share -&lt;/td&gt;&lt;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 style="padding-left: 10pt"&gt;Basic&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.13&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;0.01&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;0.27&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;0.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="padding-left: 10pt"&gt;Diluted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.13&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;0.01&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;0.27&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;0.11&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:ScheduleOfQuarterlyFinancialInformationTableTextBlock>
    <us-gaap:Revenues contextRef="c86" decimals="0" unitRef="usd">8635795</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c87" decimals="0" unitRef="usd">8804109</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c88" decimals="0" unitRef="usd">9809616</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c89" decimals="0" unitRef="usd">8342803</us-gaap:Revenues>
    <us-gaap:GrossProfit contextRef="c86" decimals="0" unitRef="usd">1812142</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c87" decimals="0" unitRef="usd">2260722</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c88" decimals="0" unitRef="usd">1973429</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c89" decimals="0" unitRef="usd">2004245</us-gaap:GrossProfit>
    <us-gaap:NetIncomeLoss contextRef="c86" decimals="0" unitRef="usd">768266</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c87" decimals="0" unitRef="usd">1146042</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c88" decimals="0" unitRef="usd">867288</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c89" decimals="0" unitRef="usd">895535</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic contextRef="c86" decimals="2" unitRef="usdPershares">0.31</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic contextRef="c87" decimals="2" unitRef="usdPershares">0.47</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic contextRef="c88" decimals="2" unitRef="usdPershares">0.35</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic contextRef="c89" decimals="2" unitRef="usdPershares">0.37</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted contextRef="c86" decimals="2" unitRef="usdPershares">0.31</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted contextRef="c87" decimals="2" unitRef="usdPershares">0.47</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted contextRef="c88" decimals="2" unitRef="usdPershares">0.35</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted contextRef="c89" decimals="2" unitRef="usdPershares">0.36</us-gaap:EarningsPerShareDiluted>
    <us-gaap:Revenues contextRef="c90" decimals="0" unitRef="usd">7545432</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c91" decimals="0" unitRef="usd">7458050</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c92" decimals="0" unitRef="usd">8620049</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="c93" decimals="0" unitRef="usd">8481243</us-gaap:Revenues>
    <us-gaap:GrossProfit contextRef="c90" decimals="0" unitRef="usd">1353098</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c91" decimals="0" unitRef="usd">1206817</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c92" decimals="0" unitRef="usd">1734880</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c93" decimals="0" unitRef="usd">1177363</us-gaap:GrossProfit>
    <us-gaap:NetIncomeLoss contextRef="c90" decimals="0" unitRef="usd">306061</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c91" decimals="0" unitRef="usd">21201</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c92" decimals="0" unitRef="usd">661359</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c93" decimals="0" unitRef="usd">276506</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic contextRef="c90" decimals="2" unitRef="usdPershares">0.13</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic contextRef="c91" decimals="2" unitRef="usdPershares">0.01</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic contextRef="c92" decimals="2" unitRef="usdPershares">0.27</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic contextRef="c93" decimals="2" unitRef="usdPershares">0.11</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted contextRef="c90" decimals="2" unitRef="usdPershares">0.13</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted contextRef="c91" decimals="2" unitRef="usdPershares">0.01</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted contextRef="c92" decimals="2" unitRef="usdPershares">0.27</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted contextRef="c93" decimals="2" unitRef="usdPershares">0.11</us-gaap:EarningsPerShareDiluted>
    <us-gaap:IncomeTaxesReceivable
      contextRef="c4"
      id="hidden-fact-0"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:TaxesPayableCurrent
      contextRef="c3"
      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:CommitmentsAndContingencies
      contextRef="c4"
      id="hidden-fact-3"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="c5"
      id="hidden-fact-4"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="c5"
      id="hidden-fact-5"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="c46"
      id="hidden-fact-6"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="c46"
      id="hidden-fact-7"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="c49"
      id="hidden-fact-8"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
      contextRef="c49"
      id="hidden-fact-9"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="c50"
      id="hidden-fact-10"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
      contextRef="c4"
      id="hidden-fact-11"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends
      contextRef="c0"
      id="hidden-fact-12"
      unitRef="pure"
      xsi:nil="true"/>
    <esp:EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback
      contextRef="c0"
      id="hidden-fact-13"
      unitRef="pure"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="c5"
      id="hidden-fact-14"
      unitRef="pure"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c0"
      id="hidden-fact-15"
      unitRef="shares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="c0"
      id="hidden-fact-16"
      unitRef="usdPershares"
      xsi:nil="true"/>
    <esp:StockIssuedDuringPeriodSharesStockOptionExercised contextRef="c0" id="hidden-fact-17" xsi:nil="true"/>
    <esp:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod contextRef="c0" id="hidden-fact-18" xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan
      contextRef="c0"
      id="hidden-fact-19"
      unitRef="shares"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan
      contextRef="c5"
      id="hidden-fact-20"
      unitRef="shares"
      xsi:nil="true"/>
    <us-gaap:WeightedAverageNumberOfSharesIssuedBasic
      contextRef="c0"
      id="hidden-fact-21"
      unitRef="shares"
      xsi:nil="true"/>
    <us-gaap:WeightedAverageNumberOfSharesIssuedBasic
      contextRef="c5"
      id="hidden-fact-22"
      unitRef="shares"
      xsi:nil="true"/>
    <us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation
      contextRef="c0"
      id="hidden-fact-23"
      unitRef="shares"
      xsi:nil="true"/>
    <us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation
      contextRef="c5"
      id="hidden-fact-24"
      unitRef="shares"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan
      contextRef="c0"
      id="hidden-fact-25"
      unitRef="shares"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan
      contextRef="c5"
      id="hidden-fact-26"
      unitRef="shares"
      xsi:nil="true"/>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="c0"
      id="hidden-fact-27"
      unitRef="shares"
      xsi:nil="true"/>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="c5"
      id="hidden-fact-28"
      unitRef="shares"
      xsi:nil="true"/>
    <us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation
      contextRef="c0"
      id="hidden-fact-29"
      unitRef="shares"
      xsi:nil="true"/>
    <us-gaap:WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation
      contextRef="c5"
      id="hidden-fact-30"
      unitRef="shares"
      xsi:nil="true"/>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="c5"
      id="hidden-fact-31"
      unitRef="shares"
      xsi:nil="true"/>
    <us-gaap:DividendsCash
      contextRef="c5"
      id="hidden-fact-32"
      unitRef="usd"
      xsi:nil="true"/>
    <dei:AmendmentFlag contextRef="c0">false</dei:AmendmentFlag>
    <dei:DocumentFiscalPeriodFocus contextRef="c0">FY</dei:DocumentFiscalPeriodFocus>
    <dei:EntityCentralIndexKey contextRef="c0">0000033533</dei:EntityCentralIndexKey>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>74
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
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
M?!^2!F.,6_0T7X\48JVFL:W&VC$,>8!8\PRA9CC?AT6:&C/5BZPYC0IO0=5
MY3_;U UH]@TT')$%7C&9MC:CY$X*/-S^[PVPPL2.X>V+OP%02P,$%     @
M,X U5^ CL_JA!P  %S(  !@   !X;"]W;W)K<VAE971S+W-H965T,2YX;6RU
MF^%OVC@8QO\5BYNF32J%Q$#9UB)1*#MN*T6EV]0[W0<W,1 UB3G'*>U_?W8"
M"9F<-T0R^[ 2R/LD^>'8S^.8RRWCS]&:4H%> S^,KAIK(3:?6ZW(6=. 1.=L
M0T/YR9+Q@ BYR5>M:,,I<9.BP&_9[7:O%1 O; PND_?F?'#)8N%[(9US%,5!
M0/C;-?79]JIA-?9OW'NKM5!OM :7&[*B"RI^;.9<;K4R%=<+:!AY+$2<+J\:
M0^OSN--6!<D>/SVZC0Y>(W4I3XP]JXVI>]5HJS.B/G6$DB#RSPL=4=]72O(\
M_MN)-K)CJL+#UWOU27+Q\F*>2$1'S/_EN6)]U>@WD$N7)/;%/=O^27<7U%5Z
M#O.CY'^T3??MX@9RXDBP8%<LSR#PPO0O>=V!."C =DF!O2NP?RNP.B4%>%>
MCRWH[ HZ"9GT4A(.8R+(X)*S+>)J;ZFF7B0PDVIY^5ZHOO>%X/)33]:)P9@Y
ML?P:!1J&+KH)A2?>T#1,VY/Z7IKHQV*,/KS[>-D2\G"JJ.7LI*]3:;M$VK+1
M+0O%.I*Z+G6+ BUYGMG)VON3O;9!Q;_B\!SA]AFRVS;6G- (+E_0S3FR/I66
MC^'R,77DT:VDW :N!F?H<:*'J] ?\OXN=T)308-(!SP5[.@%51?Q.=H0AUXU
M9!\04?Y"&X/W?UB]]A<=+)-B8T-B!9"=#&0'4A_LFNT]77F1X$02G9& ZOA5
MZ"SF-X_H=O+U'+TGP>8+NOE^,WJXOYM-1PLTNKN?G^LP@IIU,1H2*V#L9AB[
MX.4_<.)ZX0HMWH(GYNOPP?42GXX/6%27CR&Q I]>QJ<'7E]VOSZ\;;2M"RZW
MVLUO.CY@55T^AL0*?"XR/A?@!8YBSA6>B1<YQ$>/E'#5\R,Y+FEQP6K-9KO7
MQ&T=,;"P+C%#8@5B_8Q8_YB.:\2"0';]"\&<YS.T6!-Y)'07BTB04-V1.GB@
M<-V1(!7K)F+**+X,[(MVKX?E(/ERR,K000NL/F6L/AW#:AX_^9Z#)CXC0L<%
M%*G+Q:38.!7K%2!;G6Z_FU,N@+':N85K@VB&LE=RDYYIXA-M:ZD06!(_TMVB
M([BN+@%3:D5,!T[7.NINDZ"X[)^FTI2^HF_T30L,EFJK?QAWL=:%PL6UJ1E2
M*U*S<VKV4=1VG?L]W3 N$IL@B(BU+K5"\9'JJD9P56UJAM2*U')K;X&&=T_M
M)_/C4,@\+0=%GW(]+5AIQK2PC)IW4VI%6+E]MX[R[PDB-))N8<6X_JZ$=68L
M;!+'H5)&BKBIH):>4<]N2JU(+W?M5H7M3NG]HK[?? [95AH)2B(62@#3*(JU
M!*XK-$L:G5$K;TJMB"TW\]:1;GY.N<=<T*E62&73$J7S$K! ;7*G</E6;O,M
MV)EGY Z-_D2^J>_>8+%28D9-OBFU(K'<YENPS_^=V*[)E3.#Y2:/6F(F(\'8
ME%J16&[VK:/<_B(@OH^NXTA^'.E1P3J"QWIC:]3:FU(K3HKF_M^&[?L.UDU
M^4HYLZ]20:Q5K-R04#N05@B6Y@&XKBXV4VI%;'D>L(_* XNU'#E!6+!,.2RC
M,<"46A%6'@-LV+1/1Y-[-(Q=3S".AD+02*03UF61LT*OG)K1&&!*K4@MCP$V
M;-X/GJZ$L>SXT_2DQ04+E?5C<%EM6J?( 7:> VS8O^<3K)R$D9<T+X 8+%;>
MP(R:?U-J162Y^;>/,O\JZ:!9'#SIW7Z%B-7LX+[^>9I1QV]*K<@J=_PV;-.S
MIYL.X[)1)=W763*-09'LU$9,1G6N9F-=;0BH4)]I31E<5!O@*8R_G1M_&_;J
M.X /Y!5-77F?>DO/20<!H.G!DE:G:>'^A75A:>D9#0&FU(KT\A!@'S79/W1=
MJ1Z=[5^D3WSO0GV;@R5MC-&U=,B1D-_!\(6&)8.$T61@2JV(,4\&]E')(,,X
M4EOR]GU@VU"+$)9;$-D1L!5!BPV7WED[,PE+U.9WBK" \[" CPH+&;^L_YMS
M]N*%CK8=5FCJ^SZXJ/8"@U.$!9R'!7Q46,BPS9DTP#[ZV]N4#A@5BI;=[_6T
MW(SF!E-J16YY;L"PST]NSR&GI!P3+-"U^EI(1F."*;4BI(.%0+"[_\Z26:$U
M"R$75R'2[7>:':NM?6(.E]:F=8J8@/.8@&%G_^ )Z7;9$EGVAZ>/:$&=F,M6
MID4&*QT^>$?OSC%N6BV,-H2C%^+KQU)8L3;)4Z0'G*<'#!O_/3IT\^JL2;BB
MI0NG*H1FCXL;+2VC^<&46I%6GA_PD?E!4)XN5U4/#,C^T:@6&ZQ8\B04KJI-
M[12A >>A 1_]M" DH>/)CBZQ',E[-YPGR4L"3)<!_Z.FD_[5HH0/4QKWX;K:
M,$^1(7">(3!L^/<3<!./!V@ZUG*"%;!UH:5D-"*84BM2RB,"ACW]GE)I9P:7
M3SBE+KHEKYX<%4;SH7)[YR/MVD]8J3:V4R2#3IX,.A7+B';8E!M1-Z,.787$
M=;R4-R([0S.Z18^,/^N@P1JU5\P:S06M@Y7TZG%*\HN$"#EJ;BA=5)^]F_WJ
M89BL]6_ENZ<_F;@EZFE,A'RZE*7M\PLY>O'T5PCIAF";9%W^$Q."!<G+-24N
MY6H'^?F2,;'?4 ?(?@LR^!]02P,$%     @ ,X U5]!;%E"5!P  A!X  !@
M  !X;"]W;W)K<VAE971S+W-H965T,BYX;6RM66%3XS80_2N:]*:]S@1B2;9E
M4\@,!W1*>RV4<.WTHW $\9QCI;)"CO[ZKAP3)Y:LY%H^W&''J_7;E;3OK7RZ
MDNIS-1-"HR_SHJS.!C.M%R>C497-Q)Q7QW(A2GCR*-6<:[A53Z-JH02?UH/F
MQ8@$03R:\[P<C$_KWV[5^%0N=9&7XE:A:CF?<_7R011R=3; @]<?[O*GF38_
MC,:G"_XD)D)_6MPJN!MMO$SSN2BK7)9(B<>SP3D^N:#,#*@M_LC%JMJZ1B:4
M!RD_FYOKZ=D@,(A$(3)M7'#X\RPN1%$83X#C[\;I8/-.,W#[^M7[CW7P$,P#
MK\2%+/[,IWIV-D@&:"H>^;+0=W+UDV@"BHR_3!95_3]:-;;! &7+2LMY,Q@0
MS/-R_9=_:1*Q-0"'/0-(,X <.H V V@=Z!I9'=8EUWQ\JN0**6,-WLQ%G9MZ
M-$23EV8:)UK!TQS&Z?$'7O R$VAB/%3H"'V:7*+W[[X_'6GP;FQ&6>/IP]H3
MZ?'T\[(\1C08(A(0ZAA^<?APLCM\!#%M B.;P$CMC_;X.Y],KNXGKC#6XT+W
M.+-M3JH%S\39 /9%)=2S&(R__0;'P0^NH-[(V4Z(=!,B]7D?7_!JAG@Y19FY
M$'\O\V=>B%)7KJC7KN+:E=G;SV/"PH1%T>GH>3L@VR[!01C$P<9N!VNXP1IZ
ML5Z7SZ+2L/\UJD2V5+G.A1/GVDVT]7Z,TSB,&>T M0TI"Q+&4C?0: ,T\@*]
M5WPJH+ID<@F9A$J5"4CK0R&&J(2J*A\1+Z#VU9L&;M[181 $KD B"U\$V28)
MZ<3ALJ,4L] =1[R)(]Z3\$S.!=+\RU8,+IRQG<<HCN,.2N_+W.L<>98XVT3!
MO+O8+)M22P6+Y<0%GKWE7GXC9SN!)IM $^]TW?$5E'4M5,X+Y[Y(['V1)"D+
MNLO)MB,!A9U.W<LIW>!+O?C^!#(^RLNCA9*9J)P(4^O-<8)I$'0 VF841U'(
MW/APT!)9X*^&LJKW:P%9G"(M429+K4 F5"@OD0=WXW<GM8SB)-HJ)0V#.2QC
M$K 0]Q0=O$7#V%]VI.8% -TL=R=2;+\_A540);B+U&&91'$0AGU(6U[%7DX;
MWRJQX/D4B2\@)2M1U0PD]4PHT"M*F0K/JTJX6:CQO8TKA)(8,M8-P#9,4\+Z
MJB)N.1/[27.=Z .04ALIL% <TK +U;8$)@*T-.X!VY(F]K/FK0*]KO3+$"U
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
M%%6 ^OT^S^7WB^JUUOV[V[/_ 5!+ P04    "  S@#57MA*'0Z,"  "Z!@
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
M5NQYQH^[2#"'ET[L4_K%23)M.%.Q<T;H'.%U+(W]-'UVVP/<^?^0ZJ<HG*K
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
MQ =?W'K3X\'9FU<[L[97MO]Y][FC7V=IE=IM;1N<;\O.KEZ?7%Z\>/L4XWG
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
M_(L_>K_CS["7ON_]EO]$X[_M,(#>K[SOXP]LD+[+?_-_4$L#!!0    ( #.
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
M8BEZ>XZ]FV>NYB5$41 /PR ,0UJ\>C&,H_CMWMM6P;L[R)67$ _"(,W.K-K
M_K_.@F&:P'=VZRP.LE'FN63ZM$ZF:Y=,+R$E:J.SV!H&<>Q,DS!RAFD2!<-L
MX'V2ACP=3PA':Y1%01IG#B,96?ZOAT&4I@[%[@_28) E_\^9QB?.- D&R>C$
MD6[VCYQH%J_.8ZO^.@[2=."B&HR"+!O]P]$D019%IU!((1Q:(%<1#9T(Y1^7
MP#44] %6KA8+EZTE?3+%$@3_UO+"LY)&<9H-. E7Q>^"W^$R4ZQ F/)'@N!U
M+BND![7PUNY2%5X=5$4 9J<7%+R 6IJNK*U@BVR[ _V((B]:ZB0[09N2F9U.
M0'K,TC.\;F6K716#NQT[9CC>!:I-GY!$0%F,&@Q6=!XT^Q!/%]CS!;QJ@9:\
M0CM<\7KF6:?V8T7\J"68-3\".M+ #MO( @^ZP6_(E+8D[SJHI?<!M>Z8_D(L
MC/3LPZK!+=T<= 8N/0XZP-53]ZY(;*I0M6T+=K]V]E/^*,ANMG?YN9=BQSZT
M_9UIJ$(U<S.?IHMI:],-1AOI9JR\ZJ:IK7HWD]XQ-;.%*G!*IF$O._-!=7->
MMS"R<;/51!J:U-QK2:,Q*JM ^U-)G]K5PCK8#-OCOP%02P,$%     @ ,X U
M5_5&&[01 P  ^ 8  !D   !X;"]W;W)K<VAE971S+W-H965T,3(N>&ULE551
M;],P$'[OKS@%Q%-HTJ1=RV@K;0,$2* )-'A /+C)M;%P[& [[<:OY\YILPZ-
M"EX:W_F^S]]=ZB_SG;$_7(7HX;96VBVBROOF/$E<46$MW- TJ&EG;6PM/(5V
MD[C&HB@#J%9)EJ9G22VDCI;SD+NVR[EIO9(:KRVXMJZ%O;M$97:+:!0=$I_D
MIO*<2);S1FSP,_J;YMI2E/0LI:Q1.VDT6%POHHO1^>68ZT/!%XD[=[0&[F1E
MS \.WI6+*&5!J+#PS"#HL<4K5(J)2,;//6?4'\G X_6!_4WHG7I9"8=71GV5
MI:\6T2R"$M>B5?Z3V;W%?3\3YBN,<N$7=EUMGD50M,Z;>@\F!;74W5/<[N=P
M!)BE?P%D>T 6='<'!96OA!?+N34[L%Q-;+P(K08TB9.:7\IG;VE7$LXOKXSV
MED;C0&JXMJ9 Y^:))V;>3XH]RV7'DOV%993!!R*J'+S6)98/"1*2U.O*#KHN
MLY.,[UL]A#R-(4NS_ 1?WO>9![[\/_J$;Q<K%[+?'VNY(QP_3LB7Y=PUHL!%
M1+?!H=UBM'SV9'26OCPA=]S+'9]B_^?7<IKEH_$(DR$\VOR#9-,E!\(#31[[
MR8/0)2\R$!9!.%@;1??8G0_"+N\,;K3%PFRT_(4E;*PA[F+/#5NA6H2G,,OC
MR70:CR8Y!=.S>#K+XC2;#:Z,(P$6E? $]J9''JLBR&@:YZ,9<;S@X"S.TFD\
M'KV =[I0+?WCN+JXYY)Z\R?9X$!VNL5CDBT^)/$586MQ!]IX6'%MW2ADX3OI
M*U+@*P3RJY:/OT-A>6#W\"V9WH"J' TJ!E>0L8:SR]8*=J@AW-#EL8&EU=*[
MYV;]O$1%.NP=U.@K4\9A]S O)U1'P:K!K$/"D1JE#AK)X]@ NPDQUGF"DJMZ
M-R  MV"Q8I.E;J6FF _W4MW+H%^6U;]3'I.K9--@.7SLKYX<N5&-=A,\EP=!
MO)TQ]=G>UB\Z-[LO[[X)'X3=2.U X9J@Z7 ZB<!V/ML%WC3!VU;&DU.&946?
M)K1<0/MK0U=@'_ !_<=N^1M02P,$%     @ ,X U5R_@Z_L8!0  &PL  !D
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
M.2W ^V6- W][0QMT'_LN_P=02P,$%     @ ,X U5P<F1-$J P  4P<  !D
M  !X;"]W;W)K<VAE971S+W-H965T,38N>&ULE95-C]HP$(;O_(I1NFTOB(0
M^U5  MJJK;35:NFVAZH'DTS 6L?.VLX"_[YC)V13=4'MA?ACYO&\@V<\WBK]
M8#:(%G:YD&82;*PMKL/0)!O,F>FI B7M9$KGS-)4KT-3:&2I=\I%&$?1>9@S
M+H/IV*_=ZNE8E59PB;<:3)GG3._G*-1V$O2#P\(=7V^L6PBGXX*M<8GVOKC5
M- L;2LISE(8K"1JS23#K7\^'SMX;?.>X-:TQ."4KI1[<Y',Z"2(7$ I,K",P
M^CSA H5P( KCL68&S9'.L3T^T#]Z[:1EQ0PNE/C!4[N9!)<!I)BQ4M@[M?V$
MM9Z1XR5*&/\+V\IV, @@*8U5>>U,$>1<5E^VJ_/0<KB,CCC$M4/LXZX.\E&^
M9Y9-QUIM03MKHKF!E^J]*3@NW9^RM)IV.?G9Z9*O)<]XPJ2%A3\.M1F'EM#.
M($QJS+S"Q$<P_1ANE+0; Q]DBNF?@)!B:@*+#X'-XY/$+Z7LP2#J0AS%@Q.\
M02-TX'F#_Q$*/V<K8S5=C5\O::Z(PY>)KERN3<$2G 14#P;U$P;3-Z_ZY]&[
M$_$.FWB'I^C__L><QGQ5%N&J!RU<YUG^#$SKF$)I7RDJ [O!SD+E!9/[MP96
MI2&L,<"-VX%"J[1,#K8Y%]Q200.3*7"9$EUS)L!7GE:2)X"/)2^HE"U0&X'2
M(*SVGG3?6_:\'ZU3 4E8JR?4TID:M]Y)4%MJ+6UN<@B?5#&!%)*"C$H;4EHU
MEHYK+*CH$U5*B_X N.R_]N*4)8SQOH1V%ZR-4J5N4)UCJ-'%$53<@V\D3*-@
MSK;V,K20(']B*T':F6 RP2XPHD*!.B&YU 'KQ,-SXCV^0Q<TQ=.D+:&<.HW^
M*OHP*<4^+2T)%JBLL"DKG_F+X=]N+@5MMT[;C11^V+F[\JP[XR:A/.R1:=-I
MR,X6MJ@I]H*NS(Y3$T6QA[/1\*H[ZD?>Z*S?/1\.NU%$<(JA0-^FQ;[W4@V%
MK49'H:U].S?@$U/UO&:U>3%F5:-\-J^>FQNFUUP:$)B1:]2[& 6@JQ9>3:PJ
M?-M<*4MY\,,-O7JHG0'M9XI*JYZX YIW=/H;4$L#!!0    ( #. -5<ZS.<"
MY04  *(-   9    >&PO=V]R:W-H965T<R]S:&5E=#$W+GAM;)U776_;-A1]
MUZ^X<+NM!11;EFS'29, 3IIB&] UJ-OM8=@#+=$1$8E42<J.__T.J8_8K9MA
M?;$E\MYSS_TD=;%5^L'DG%MZ+ MI+@>YM=7Y:&32G)?,#%7%)7;62I?,XE7?
MCTRE.<N\4EF,XBB:C4HFY.#JPJ_=Z:L+5=M"2'ZGR=1ER?3NFA=J>SD8#[J%
MC^(^MVYA='51L7N^Y/9S=:?Q-NI1,E%R:822I/GZ<K 8GU]/G+P7^%/PK=E[
M)N?)2JD']_);=CF('"%>\-0Z!(:_#;_A1>& 0.-+BSGH33K%_><._9WW';ZL
MF.$WJOA+9#:_',P'E/$UJPO[46U_Y:T_4X>7JL+X7]HVLA-83&MC5=DJX[T4
MLOEGCVT<]A3FT7<4XE8A]KP;0Y[E6V;9U8566]).&FCNP;OJM4%.2)>4I=78
M%="S5[=E5:@=Y[2T*GV@#UO)M<E%17<%DQ<C"Q-.<)2V<-<-7/P=N'%,[Y6T
MN:%;F?'L$& $;CW!N"-X'3^+^'LMAY1$(<51G#R#E_0.)QXO^1&'Z>_%REB-
M4OGGF.\-\N0XLFN?<U.QE%\.T!^&ZPT?7/W\8CR+WCS#>]+SGCR'_O\3]3S<
M'\IR&D=#ZG"#H_'XE'.Z467%Y(Y,I:11VA"C@F^X1L]FQ#MUX]55KUXY]5<6
M^H/;Y8>[P6NR.;.4*F@"HBA(*EE+UYD=AJ%MKGP7TSB,HHB4IE)I3KFJH5-Q
M33O.-#&9$<-RJY<%P$"9<)3)\(!QR1X RJ2L60'+TFJQJMTP,&05.6Z.&O$O
M;G]OY1>#QEY9<CD4*8>[!BMB(S(N,T,P5TMXH%)F$0*3@XP)-$\Y!DQ&JUT/
M-*0%'/T/33JFZ1VL#1;!JV*[ T)#>KL/^03H-(,6U0$ 66GT(3&7-<VSNIF%
M:HT7BY'M,LBT%/+>@*OQYKTEX6A53&0A'> 5G#E2/@6]65!LINM3*L-@Y05A
MS&%66E5*=[8/@NN,D&C$7'H/4\C25-72&L+Y0P+_/CA"^@V=,0F$K; YO5LL
MKVFQO*'3\?QD@D)8> %X5NS"P(&W?E2U3G//[>MPPV%P;*+U6;JXM"&E9:/:
MLC067N-@LLZ7M9 @(5! E3+">>@#>21H 3Q(55D*"QLG5IVL^$FW%WK@SNF&
MB''2.'P-\W'CC^Z9'U9K6FOMB+"F'U'Q^@$G>:5=9,'NR>_0YPSO77VL4!LE
MA&H+?Z0+E(]Q5PXG:+<3+TJO;N^6KSV9VGHNILF1#\U*:4PR!&JM5=EZH4&_
M(8T9P$J7P$/:70X"3[1!*Q2$MP+]LN)M[;F K\7:<HY1,IZ^;D':AA82Q(O"
M)<(X7X&%1%2^U4NLILXE/Q=P=(P;(]>*:13E.G@KT!O633/P@)%'[H,#4,L1
M'4MP@'<A0]-Z.BM6M 7G66(4]>(8;:R%\9K@DPRCZ"<_M1SA<MC$:S^G09?3
M+3B\3&;3<#:9>:,ODW@:1K-3GY*N,PQQ=ZAVLZXY$KTX'N(003,5]WU8[/8R
MU)6B#]*!;M#ITA9>.(FU0E-OS7G@H=U6L/AZ7$WFD_!L.J?)V2R,SL;!9]F/
MA58B3A)X,J5X.@OCLR3XI)"H;C/GQ6'KH6'#6930Z30.D_DD>,>$I@TK:A_%
M^AOTEY2$9^,DG$XG_GDV.0MGN'@<3OZ=2XG%_=$T]?2E1L;]J$)M=>77A<8^
ML:D8QI0K(U35SR_F\?CTC==ND^SDUHY@VVF>)^9QK5VUN5V[Y04F8=E<@Y[/
MV%[3!QD*3"J[1Z^?6)IOA*I-L?LF>'MI9CYS30\7XEZL"G[@#%P/+ Y$=\@6
M+3:.)K-W*/8M[ ]OM*^K)[$6*64H '-L[+;#?2-,.]L[]6$S-(]8"/I89S\2
M-?B!:L(VBNQT'O7EC>WQ)(QGTW[@'?3#L2O8:._>7')][[\.W-C%P&JNT/UJ
M_P&R:.[=3^+-U\M[IN\QD'!56$,U&IY.!Z2;+X+FQ:K*W\)7RN).[Q]S?$1Q
M[02POU:XD;4OSD#_67;U+U!+ P04    "  S@#57O"]U>%4,  "7(   &0
M 'AL+W=O<FMS:&5E=',O<VAE970Q."YX;6RM6FMSVS86_<Y?@5&=KCW#R"*I
ME_.:L9.TF\XTS<9I.SL[^P&B( D-1:@$:5G[Z_?<"X"B9-EM=_9+3)'$?1Z<
M>R^85UM3?;4KI6IQORY*^[JWJNO-B\M+FZ_46MJ^V:@23Q:F6LL:/ZOEI=U4
M2LYYT;JX3 >#\>5:ZK+WYA7?^U2]>66:NM"E^E0)VZS7LMK=J,)L7_>27KCQ
M62]7-=VX?/-J(Y?J5M4_;SY5^'792IGKM2JM-J6HU.)U[SIY<3.D]_F%7[3:
MVLZU($]FQGRE'Q_FKWL#,D@5*J])@L2?._56%04)@AF_>YF]5B4M[%X'Z=^Q
M[_!E)JUZ:XI?];Q>O>Y->V*N%K(IZL]F^W?E_1F1O-P4EO\56_?N,.N)O+&U
M6?O%L&"M2_=7WOLX=!9,!X\L2/V"E.UVBMC*=[*6;UY59BLJ>AO2Z()=Y=4P
M3I>4E-NZPE.-=?6;V]KD7Y_?P*^Y>&O6R+65%*Y7ES6DTSN7N9=TXR2ECTA*
M4O&C*>N5%>_+N9H?"KB$6:UM:;#M)GU2X@]-V1?9(!;I(,V>D)>UOF8L+WO,
MUY6LE/?UD]P!6K6XKBI9+A5?_^MZ9NL*./GW*>^=[.%IV;1W7MB-S-7K'C:'
M5=6=ZKWY]IMD/'CYA.7#UO+A4]+_4I:>E'3:SH^F5B))^L+IF3W0([ZL%-^0
MY4XL3(&M;,7U[5LQ2:9"ET+96LX*;5>Z7$:X+N>RFEN\68D:*V6>FZ:L\=#=
M0LBMY%UI:?5VI?.5D!"#=^J=4/?YBI*"A[45ZO>&;NH2N6DH3T[NTAAHP 7Y
MH'-E8R&MV&)[T]^NBNB$"EWF365%H>5,%[K6B@T)BD\K@"NR%H"0< %"6,BY
MA=25N)-%HX19\!VGX]MOIFDR>1D<B+H.<%P@;"UW8J:@H:X+2)SM>+VVMI%E
M[N49JT[$H-^&OZ*'53"/UN?&UKAM04P<\LJLA41<+..?C8\V'O\'N8 IE<K-
MLM3_@37:^Z=+&*,EUM>R5LZ!/XA 1Y/PFO8&MV!1-NHLI:QAZ5I)VU1N0YK9
M;XI9FVPY M$)%8?.;'6]$FJ]*<Q.$3J07+6I>>W#<$8K57#\PP(G7YAMJ2K
M>B,V!63WQ8<R+QK0&YDK$:UYXZI+;;JA;V/XB*5 FV4TVEJCLCC F0U)BG"Y
M4+I&#$A=36_6^]W7HFIC"IWO2&\K1-UO$"[*"TL2'4G[A*TT:DJE<^23WJ^T
M M*0G+QN<*NS)"+_Y?PWU" RO-($6N?E':E$'N:D5;N4:YB7L[5D2P6\],47
M4S-L]J22=TF%])>VB[G(8ZZ#-""*%E5J19T 0P&_5<LM"VW)EYV2V,^**H]
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
MW/VHS88_/<],79LU7ZX4IIN*7L#SA3%U^$$*VO^+\.:_4$L#!!0    ( #.
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
M_X5=.)M>19"UQJJZ<R8&-9?AGWWM\G#@<#W^CD/:.:2>=PCD67Y@EBUF6NU
MN].$YAZ\5.]-Y+ATE_)D->UR\K.+1Q3,8@YKIBU',TLL@;JM).L 5@$@_0[
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
MOGLV42%?UO)+\IU<D#8^X;HECPWNMQ1X [YO/0[+X84=C#?F]=]02P,$%
M  @ ,X U5TS1]:_@!   (@T  !D   !X;"]W;W)K<VAE971S+W-H965T,C(N
M>&UL[5=+;^,V$+[K5Q#:Q;8+J+8>?B1.8B"O15M@TR#I=@]%#[0TMHA(I$)2
M<?SO.T/)BIQDG79//?1B4^+PF^^;(8>CX[72=R8'L.RQ+*0Y\7-KJ]EP:-(<
M2FX&J@*),TNE2V[Q4:^&IM+ ,[>H+(9Q&$Z&)1?2GQ^[=]=Z?JQJ6P@)UYJ9
MNBRYWIQ!H=8G?N1O7]R(56[IQ7!^7/$5W(+]4EUK?!IV*)DH01JA)-.P//%/
MH]G9B.R=P1\"UJ8W9J1DH=0=/?R2G?@A$8("4DL('/\>X!R*@H"0QGV+Z7<N
M:6%_O$7_Y+2CE@4W<*Z*KR*S^8E_X+,,EKPN[(U:_PRMGC'AI:HP[I>M&]MD
MZK.T-E:5[6)D4 K9_//'-@Z]!0?A-Q;$[8+8\6X<.987W/+YL59KILD:T6C@
MI+K52$Y(2LJMU3@K<)V=WUJ5WN6JR$";']CE?2WLYGAH$9GFAVF+<M:@Q-]
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
ME!XCLO#"R9&8OAWX*GP:[3T4>EL*%7[O5=L)1DNV*YY&@/@.MP"DU!B$P,O
M]+'+Q0_>L)Q]*%VJNZ2?+!&(F:\@$6\KGYC@557LXH\+9Z<6+DW)T9#'/*'=
M",T/2JJS"10["4R&)I/%Z3X1L0VC2T^MK>GOPEO6?R=Z_HNP@K<=D^;GY!+3
M'O'/K@OSQ'""9.#)4=/TY'SQ*)JFF.G-DDSO^5N)GW^2LHVW6(^63\AB_9RD
M#.G<QB.)^9.I8V^Z9I+ES88L;^+0)7L5^@ F*A#271/Z^+QZ!.<'I.:=ZT$]
MWU\A07<60X-UWPI&JU0;+8C+N)V2&_];[PGF^?NI1,4LKZRJT];0Z5S:*"((
M-TEB#@3]C@B"H6.W9.C.*VMQF2.+U /:$4&EKM \L!U*-GIHG$W&0&5"!8M-
MND^!R,&$[+J/M_S3F"8=;K#(>8;FT;0)^!MKC>D.TQ:^D+>YEX08$YIN5;E,
MB;?P1C[<];DO%=Z"?"O6'1J3%E_I+:+C,VT0]I]LO3G_R:#E_HJAV*2B_Y]F
ME"<5/Q&XE[90TSF11>SV,^E.8Q>;Q3:NV;C[G(WHL!J"08W6-" ]R;@?ZY3$
MA3ZNSPU%A8,<<DB)B<XJ3O!E0_.,R-*G\$$*$ /H%='@NB6TB.LFZ&@.NH\F
M>;DFV1KGNVN_0@,22[&;GIPA.;EPPT<ZI3B-O>9^L ,#,5QF]&$\SSC//WQ]
MU1 @<Z=Q[..3%;-A19Q3>A22ZSJH.8?%9975/KG*-D%"I',4I"?I\G3,//LL
M24"^H&434EASJD.1@T",4-$X 1A$5=A'K&ZLDX8)R%_H'R H':UT2!Z/"^'C
MDO+!+8W)?;?I#KE)1SJ&@7MU50GDI UB1[J-#92 46#!L0"*^[7B/C9DJ)J#
MOH188X\M"8,'2C9LAMLZEN).:) <4KKB/G-RI7&Z/V"&+!>#Q8+5Z)0=&WJ]
M%E]I]K(UG%JKXKJ?C/LR:;[^RD3^@K2T:"$MU[?QNC/_N@#!%E.X> D-7? 5
M= !-XKI!(J2.T,T[FF@T@',/KE+?#]F/7'SFV[ZMV0UM\+@(&>Z)XL9<N(D<
MNUU0%*A!5L$]O;X5'-=MN '6J^E!PJ"=7!R&46 J @9Z[M(F0F)2-D"'Y%+;
M//][2%3,\E_FU_1YN/8]OJ_@KQ)DO$U;!&!6J5OGU2O>99OGUX@EO<@=W-$X
MF%8V,1BET]?DY);<+!.#5:D]9X!Q 0,[RIOP P%\K2;67N3J)=^BX0@15W!Y
MR' [T;-ZS $?5^)B_/X\5DW40%F6;-IW4B+2%)>+7]MHPB<!R)\$Z.D[A6$G
M+N4/\[CP:IZ6H_RP[&O<>@=V202$*?A&/?C/*3U$=!J2=^\ .2KB-!2;Q.1V
M,4>J"C R!0O#'3$?'<KY#"?MVQ;"O6'-;],H*]5R%)>)";-@F@?)CC=[.(U>
M&[EWU/K^+OZY#W:?"8U [G&=V,4\>O_P%PYFR?N6+UK'.]S#_=8L7CT(G8R"
M+E''B]=F>%\^^3<+/=F<SK*@QY=7$!MK4>;88Q8(Y8MN)=F'^_O*#O;E&3 [
MV$V2?&R@(6PFD;N/TZ.5"U4ZGYID 7$ZE0 1E7A]:%!CZ'\22='YC^ZN"22,
M"C7^$0FN\LI5NL0&S=)L#&;RY _EW@;[9ST-44(6:L9!PGR\QX(F:4+N6^%&
ME_0W+(X9H_/0]CA<@,()3;K$B^0'7G::7 M^QH:SDG4GO_42G\:?RKF2'X@9
MALOO[/S,UW5QYW)-KU[.GSX^D]\]"!\ZV_#/Q:QLU]D=_XE;AKK% /I^;6T7
M/F"!^ -"K_\74$L#!!0    ( #. -5=MX?+]DP(  +,%   9    >&PO=V]R
M:W-H965T<R]S:&5E=#(V+GAM;*5436_;, R]]U<0+E!LP%!_)/U FAA(V@[;
ML )!LVZ'80?%IF.ALN2*<M/^^U%VXF9 FLLNMB@]OD=2(L=K8Q^I1'3P4BE-
MDZ!TKAZ%(64E5H).38V:3PIC*^'8M*N0:HLB;YTJ%291=!Y60NH@';=[<YN.
M3>.4U#BW0$U5"?LZ0V76DR .MAOW<E4ZOQ&FXUJL<('NH9Y;ML*>)9<5:I)&
M@\5B$DSCT6SH\2W@I\0U[:S!9[(TYM$;7_-)$/F 4&'F/(/@WS->HU*>B,-X
MVG &O:1WW%UOV3^WN7,N2T%X;=0OF;MR$EP&D&,A&N7NS?H+;O(Y\WR94=1^
M8=UASUDQ:\B9:N/,=B5U]Q<OFSKL.%Q&[S@D&X>DC;L3:J.\$4ZD8VO68#V:
MV?RB3;7UYN"D]I>R<)9/)?NY=-%=!I@"%G*E92$SH1U,L\PTVDF]@KE1,I-(
M\.&'6"JDC^/0L;!W#[.-R*P32=X1B1.X,]J5!+<ZQ_Q?@I C[L-.MF'/DH.,
MWQI]"H/H$R11,CC -^C+,&CY!O]?AM_3)3G+K^G/OD)T,L/],K[#1E2+#"<!
MMQ"A?<8@/3F.SZ.K TD,^R2&A]C3!7=LWBCT6;@2X9:<Y'>+.3P0%HV"[]P
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
M1WC'R[:\;#M:U+:D6PN-!:)M%EB1@S0&.)\++&BZCG'0U_CS?P!02P,$%
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
M+V6Y,-]H7]N&L8722DA6-&!U!P6A]2]^:H0X BB>;H#7 +P?!?@-P#\'1"\
M@@80G ."%P!A S"AVW7L1K@$2SR?<K9'7%LK-CTPZANTTHM072@/DJNK1.'D
M?,55S7'Y=816.:8289JAY9>*E*H8)'J5@,0D%Z_1&_3Q(4&O?GX]M:5RJ\%V
MVKA8U"Z\%URXZ(Y1N15H23/(.O W_?CH>_CD._Z]'@);Z=6*YAU$6WB]C ]0
M7B$W'B'/\?RN@/KA":17R'<-W.N*IQ_^6T45W'G1^_+'X5Z/&'Y;0;[A\_]E
M!7WZ70'1K81"_-551+67H-N+WB^O18E3F%EJ0Q3 =V#-?_G)C9Q?NQ(P)%DR
M)-ER(+*35 5MJH(^=E5XBC0EV&S1\*0.&P%=J>AEN3050Y(E-5EDR/09N)L'
MDR#VG*F].Q:YPRP.(C]LS4[D"UOYPE[YWE4T(W2#<,$J*KN$Z\5?*ESX+(AQ
MX.C/:;#)D$Z7 Y&=Z!NU^D:]^G;M)'#824;H W1JWLMYJ>9#DB4U67B40&_B
MA<XD/JO6#KMQ/(YCO[M<QZV<XUXY[V$'M +U.)>R#27Z3S]"=R0']5"A=N("
MY)9E(]28B8/=WYUG[&+\K!KC*'Y6C#>]MW2I@$.2+0<B.TG%I$W%I#<5BXKD
M9NNX+4K.=J +6J!/=U \ N\\#7OY+JWJ(<F2(<F6 Y&=)"5NDQ+_+P\N\9"I
M&I(L&9)L.1#92:I<YUN;XOP'9T,_Z:6Y&90M:=B.=U3?F3B.>W8Z=-B%$R^.
MS@X'^Z@'+(!O3/,M4*H?5>K.IEUM&_RWIJT]6T]TXV]ZRV\T]5N#.\PWA J4
MPUI1.E=C=63QNA&O)Y*5IM-\9%+UK6:X!9P!UP;J^IHQ>9AH!^WKD/D_4$L#
M!!0    ( #. -5>GD=!<LP,  %L2   9    >&PO=V]R:W-H965T<R]S:&5E
M=#0R+GAM;+5876_3,!3]*U9 "*1ML?.=T59B&P@0DRHFX 'QX"5N:Y'$P7;:
M[=]C)UF:M&F@D+ZT=G+OR;DG]]HWGFP8_RE6A$CPD":9F!HK*?-+TQ31BJ18
M7+"<9.K.@O$42S7E2U/DG."X=$H3TX+0,U-,,V,V*:_-^6S""IG0C,PY$$6:
M8OYX11*VF1K(>+KPF2Y74E\P9Y,<+\D=D5_R.5<SLT&):4HR05D&.%E,C3?H
M\AH%VJ&T^$K)1K3&0(=RS]A//?D03PVH&9&$1%)#8/6W)M<D2322XO&K!C6:
M9VK']O@)_5T9O KF'@MRS9)O-):KJ1$8("8+7"3R,]N\)W5 KL:+6"+*7["I
M;:$!HD)(EM;.BD%*L^H?/]1"M!R0<\#!JAVLOW6P:P>[#+1B5H9U@R6>33C;
M *ZM%9H>E-J4WBH:FNG7>">YNDN5GYS-N<H(+A_/P#S!F00XB\';7P7-U:N2
MX.4-D9@FXA4X!W<J@^(B(8 MP+#7.?AR=P->/G\U,:6BJ!]D1C6=JXJ.=8#.
MQR*[ #8\ Q:T[![WZ[]WM[KNIA*F4<=JU+%*//N?U/G^29F##Y*DXD=?J!6V
MTX^MZ_-2Y#@B4T,5H"!\38S9BV?(@Z_[ A\)K".#W<A@#Z&W9,@;&<B3#&=@
MR9D0?0)4J%Z)JM>3]0QYCF5#-YB8ZW9P/89NZ/B6XS>&'>).0]P9)/XFBHJT
M2+ DL:IMI4Q$L5X]^LA62&Z+PSFRW= /O7"';:\E<D++=?KIN@U=]W]TSHCL
M(^[NT;$"RX7!+NT>.U^%%]K]I+V&M#=(^I-F^?V6I/>$]Y;!H/NQ93 26"=2
MOXG4/^%JX(\IPTA@'1F"1H;@)*M!L)=_C@LAW,G2/UEU*(<-Y7"0\E5!DYAF
MRY(K37/.UD2S%8.).XAY[!L;":P3/H+;71Z>,'5K\)&4& NM*T6KX4$G2=\:
MMI.9 4+(WUUG^PQ5#MMAV)_$:-N-H,%=_A_WAQJTS<>& 81HE_>^G1M8H7>
M];9Y0,/=PRV.5NH2?^SR'2R]8<BC,VXDM*X VR8$.:<LOL$6YV@I1D+K2K%M
M<-!_=3B'BV^_>4'(@9:W7WU]EE;@>TYP()&WC0X:[G3>%3RCLN"DI+V@#WH\
MO(4,(Q[]\D[1_:!M^X-.V?^@41N@L="Z4FQ;('2:'JB&W?TDVNN"_FQ7$3=;
M7_[ZV.46\R7-!$C(0CG""U_5 :].,JJ)9'EY&'#/I&1I.5P1'!.N#=3]!6/R
M::+/%YKSI-EO4$L#!!0    ( #. -5<O@D (M (  )X'   9    >&PO=V]R
M:W-H965T<R]S:&5E=#0S+GAM;*V5;6^;,!#'OXK%IJF5MO"40-8E2$W2:9M4
M*6K5[<6T%PX< 15L9CL/_?8[&\*2E+*^V)O$-G=__^X.[B8[+AYE!J#(OBR8
MG%J94M65;<LX@Y+* :^ X9.4BY(JW(JU+2L!-#%.96%[CA/8)<V9%4W,V5)$
M$[Y11<Y@*8C<E"453S,H^&YJN=;AX"Y?9TH?V-&DHFNX!_50+07N[%8ER4M@
M,N>,"$BGUK5[-0^UO3'XGL-.'JV)CF3%^:/>?$VFEJ.!H(!8:06*?UN80U%H
M(<3XW6A:[97:\7A]4/]L8L=85E3"G!<_\D1E4VMLD012NBG4'=]]@2:>D=:+
M>2'-+]G5MD/?(O%&*EXVSDA0YJS^I_LF#T<.;O""@]<X>.<.PQ<<_,;!-X'6
M9":L!54TF@B^(T);HYI>F-P8;XPF9[J*]TK@TQS]5+1L"G*SQ_=" KE8@*)Y
M(2_)!_)POR 7;R\GML*+M+D=-Z*S6M1[0=3UR"UG*I/DAB60G K82-AB>@?,
MF=>K^&W#!L1WWA//\?P.H/GKW;T>'+_-FF_T_%=F[>?U2BJ!K^2OKF356L-N
M+?V97LF*QC"U\#N4(+9@1>_>N('SJ2O0_R1V$O:P#7O8IQXM(,63A*R X4J1
M&(LL\M5&?Y"24)80J!,BN])0:P=&6S>7;>0Z7N!B/;;' 7:8N8X?CENS$_11
MBS[J16\J)4^9NS!'S^X//7_DG%%V6/EAZ'9#!BUDT NY!!$#4]@]"4\)E%7!
MGT"<('<1UZ(?CUB<@7O&VV]S0ANVM&%_2FL^^"=?^"Q7(S\,QF>$759C/SAC
MM(]:70EB;2: KNJ&J;J=M*?MD+DVO?7L?(;#IYX5?V7JR75+Q3K'][F %"6=
M08BU%O4TJ#>*5Z:AKKC"]FR6&0Y0$-H GZ><J\-&7]".Y.@/4$L#!!0    (
M #. -5=>0XOBW0(   L(   9    >&PO=V]R:W-H965T<R]S:&5E=#0T+GAM
M;*V5;6^;,!#'OXK%IJF5EO(,39<@-<FF=5*EJ%FW%]->.' $5+"9;9+LV\\V
MA.6!1%.U-V";N[]_=]AWHPUE+SP#$&A;%H2/C4R(ZLXT>9Q!B?D-K8#(+REE
M)19RRE8FKQC@1#N5A>E85F"6."=&--)K<Q:-:"V*G,"<(5Z7)6:_)U#0S=BP
MC=W"4[[*A%HPHU&%5[  \5S-F9R9G4J2ET!X3@EBD(Z->_MN&BI[;? MAPW?
M&R,5R9+2%S5Y2,:&I8"@@%@H!2Q?:YA"42@AB?&KU32Z+97C_GBG_DG'+F-9
M8@Y36GS/$Y&-C5L#)9#BNA!/=/,9VGA\I1?3@NLGVK2VEH'BF@M:MLZ2H,Q)
M\\;;-@][#G9PQL%I'9QC!^^,@]LZN#K0ADR'-<,"1R-&-X@I:ZFF!CHWVEM&
MDQ/U%Q>"R:^Y]!/1G-%UKG^)/!'H@<2T!/05;X&CJQD(G!?\&@W00IZ>I"X
MT11-:5E1 D1P-1,9H LB _2\F*&KM]<C4TA<M:D9MVB3!LTY@V8[Z)$2D7'T
MD220' J8,LXN6&<7[,2YJ/BE)C?(M=XCQW+<'J#IO[L[%W#<+O>NUG//Z+TZ
MJ3_NEUPP>0-^]F6UV=3KWU15A3M>X1C&AKSV'-@:C.C=&SNP/O1EY#^)'>3'
MZ_+C75*/IC5C,B-(X"V"K:Q;'.1Y2B$!AHN^R!NY0,NI\K6.;,L?AI[\U^O]
MH$[M7-L-+;\S.\#U.US_%;A<8 %]L(V8OP<Q](?^$>FID3<,;_LY@XXSN,@Y
M@Q0D::)!KY9 (,W%]0ZY#S4XH1AXEF4Y1["G9D,GM/MAPPXVO A[> ORYA8(
M=0OZ0,.> ^ ,73<X(CVU<YUPZ'M'K.9>72V!K72[X2BF-1%-U>E6NXYVKPOY
MT?I$=KJF,?V5:=KD(V:KG'!40"HEK9M0IH\UK:>9"%KIZKVD0O8"/<QDMP:F
M#.3WE%*QFZ@-NOX?_0%02P,$%     @ ,X U5_[/7F>_ P  < P  !D   !X
M;"]W;W)K<VAE971S+W-H965T-#4N>&ULK5=M;]LX#/XK@@\;6F"+W]*TZ9(
M;=KA=KBM07/;/@SW0;'I6(@M99*<M/_^*#EQDTQQ=D"_))9,/N1#4A0]6 NY
M4#F )D]EP=70R[5>7ON^2G(HJ>J()7!\DPE94HU+.??54@)-K5)9^%$0]/R2
M,NZ-!G9O(D<#4>F"<9A(HJJRI/+Y%@JQ'GJAM]UX9/-<FPU_-%C2.4Q!?UU.
M)*[\!B5E)7#%!"<2LJ%W$UZ/P\@H6(EO#-9JYYD8*C,A%F;Q*1UZ@?$("DBT
M@:#XMX(Q%(5!0C]^;D"]QJ91W'W>HG^TY)',C"H8B^([2W4^]*X\DD)&JT(_
MBO6?L"%T8? 242C[2]:U["4*)Y72HMPHHP<EX_4_?=H$8D<A[!U1B#8*T:%"
M]XA"O%&(+=':,TOKCFHZ&DBQ)M)((YIYL+&QVLB&<9/&J9;XEJ&>'DVD6#&;
M$RP)\HDGH@3R#WT"1<[N0%-6J'/RGDRQ?-*J "(R<I]E8(._(TX>J08U\#6Z
M9(#]9&/^MC8?'3$?1N2SX#I7Y)ZGD.X#^,BE(11M"=U&K8A_5;Q#XN =B8(H
M=C@T_GWUJ,6=N(EO;/'B(WB_%SCRXV:FM,2:_M<5P]I$UVW"'/1KM:0)##T\
MR0KD"KS1VS_"7O#!Q?^5P/:BT6VBT6U#'WWM3#LD@Q0D+8C25%=:R&?"ZG!H
M#(?$<+A"4./V+:YI3:M1T(G"@;_:I79":,_EB\;EB]8$8JJP/2H@9Q(3:7O/
M.3IL'<4^IK!=,#XGF13EM<OQB]?,W2N![06BUP2BUYJ[J3:,,TEYDC-EL_6.
M<+QHL+*W*=U)Y PX9$R[0E+;"8.]/ 5!=)#-(V*Q.Y^7#8W+5AKWTX<)2832
M9 5258I\I$R2SU0ND,HW6E3.\FO'/,,R"]Z<NS)V0C'LQ+\H[M&Z:FA=M2+=
ML15+@:?$7(U%(1),5DHL6953Z>[-K9#N<B(NDNVNG<6=L)UDOR'9/U&"(EF\
M-[=VBBDL<911U!Q(%[>^HQ<$APW#*=1U%U@8O%RI0:N;IJ63.X;=7@+7#,\%
M)N4+EM?#$D^);1=_"Z7(F$KY/*/)PGEOMMKX'\DYX2S6[HGLA#NS1-B*]:!S
MD$XR[7I.'S;>G]3\]>3M>Q^]>!^U=X;F>FZ[B#8@!VTI"OL'I75$+N@=5)>_
M,[N5(.=VI%58WA77]=33[#9C\XT=%@_V;\TX;6?"%YAZ%L?F-F=<D0(RA PZ
MEWB-R'J\K1=:+.V$.!,:YTW[F.,G 4@C@.\S(?1V80PT'QFC_P!02P,$%
M  @ ,X U5W*6\'.9 P  GPL  !D   !X;"]W;W)K<VAE971S+W-H965T-#8N
M>&ULK99M;]LV$,>_"J$-0PLTD:A'.[,%I,F*96@WHVZWUXQTCHE0HDI2=KQ/
MOZ.LJ'Z@O13(&YN4[DZ_/\D[WF0MU:-> ACR5(E:3[VE,<V5[^MB"173E[*!
M&M\LI*J8P:EZ\'6C@)6=4R7\, A2OV*\]O))]VRF\HELC> US!31;54QM7D/
M0JZG'O6>'WSF#TMC'_CYI&$/, ?SM9DIG/E#E))74&LN:Z)@,?6NZ=4-#:U#
M9_$WA[7>&1,KY5[*1SNY*Z=>8(E 0&%L"(9_*[@!(6PDY/C6!_6&;UK'W?%S
M] ^=>!1SSS3<2/$/+\URZHT\4L*"M<)\ENO?H1>4V'B%%+K[)>O>-O!(T6HC
MJ]X9"2I>;__94[\0.PXT/N$0]@[A2QVBWB'JA&[).EFWS+!\HN2:*&N-T>R@
M6YO.&]7PVF[CW"A\R]'/Y#,E5[S;$SP2Y*XN9 7D"WL"3=[<@F%<Z+?D@LSQ
M^)2M "(7Y!86H!24UHQ<:PU&$U:7Y"-G]UQPP]'W@GR=WY(W/[^=^ 8I[;?\
MHB=ZOR4*3Q#]T=:7) K>D3 ((X?[S<O=PWUW']=F6*!P6*"PBQ>=B#>H-:B6
M=6JO7**V46)W%)N,5[IA!4P]S#8-:@5>_LM/- U^=4E\I6![@J-!<'0N>GY=
M%*I%O?"$I4*#=HG=1DB["+90K/(PBX)D//%7NS(<9D&<9?%@M@<8#X#Q6<#?
MYG_-7%!;KV3W:W$<9 =,QU8T#J/,C90,2,E9I+F1Q>.%+2<EP0RR"\=LE7)A
M)D< 49HDX0&FPRK*Z-B-F0Z8Z5G,+](P88O<X8EV<:8.@CB@HP/08[,PL8?!
M39H-I-G+LT[TA67C3+SL-1/OE8+M:1X-FD=G=P=+<0/*;-Z11K#:=#45OK6\
MP5O38$5M%*\+WC A-J1L@1A)2K[ =8*ZP)++:]Q9Q"IX=_1(!68I2^?6CER'
M*PGHP=8ZS+(X25/WUHX'F>.S,N_J%>J1:H.2 /$+8R^5MN:V)R$%:S@>4O[O
MR?P9'U&-QR%-#MB/K>@XS$Z@T^#[;1G\SQY!P_CYXMB'V%NWA(:'Q=%EEF;T
M%.+.A4Y_-,F'!'+BTB...*.C^'!%7798\Y/1">#O%RP]>YWE?V*S^@.XX=&E
M<D&C;!0>%GJG88:&A\#^3O=D6]=/3#WP6A,!"_0,+C.4K+;=X'9B9-,U5/?2
M8'O6#9?808.R!OA^(:5YGM@>;>C)\_\ 4$L#!!0    ( #. -5<A7+[G( ,
M (D,   9    >&PO=V]R:W-H965T<R]S:&5E=#0W+GAM;+57:V^;,!3]*Q:;
MIE;:RB/DU25(3;)'IU6J$G7[4.V#0VZ"5;"9[22=M!\_VQ *$4%K1?,AV,;G
M^-[#L;F,]HP_B A HL<DIF)L15*FE[8MP@@2+"Y8"E3=63.>8*FZ?&.+E ->
M&5 2VY[C].P$$VH%(S-VRX,1V\J84+CE2&R3!/,_$XC9?FRYUF%@3C:1U -V
M,$KQ!A8@[]);KGIVP;(B"5!!&$4<UF/KRKV<N@9@9OP@L!>E-M*I+!E[T)WK
MU=AR=$000R@U!5:7'4PACC63BN-W3FH5:VI@N7U@_VR25\DLL8 IBW^2E8S&
MUL!"*UCC;2SG;/\5\H2ZFB]DL3#_:)_-[3L6"K="LB0'JP@20K,K?LR%* '<
MW@F EP.\8X!_ M#) 1V3:!:926N&)0Y&G.T1U[,5FVX8;0Q:94.H?HP+R=5=
MHG R6) -)6L28BK1U"P'7*"S&4A,8G&./J"[Q0R=O3T?V5(MIT%VF%-/,FKO
M!+7KH1M&9230)[J"597 5G$6P7J'8"=>(^.W+;U '><]\ARO4Q/0]/_A7D,X
MG4*[CN'S3_!] ;;A.(U(B*:,AD EQ\:;<R(>T/T-)$O@O]!?-(<=T"V@"= P
M4KOEZ6:=JHV+ZFU]*5(<PMA2^U8 WX$5O'OC]IR/=8JT1%;1QR_T\0U[YX7>
MNO^N .A:0B)JA?#;%*(ELHH0W4*(;J-1JN[@VATI<#VD3LJZS#.ZH:'3!_$N
M<"X&KE/^N2-[5\ZO#M+M%Y,J<?>*N'OM&/PJ#-F62J&<'@+9X64,C19O7/:Y
M3[8ELHI"_4*A_JM:O-^F$"V15808%$(,VK7XX/D6KX/T_7J+#XNXAXUQJUI
MO>EIZ>&]^-QN7.BYS[(ELHHFKO-4%#BO:NN<OB4MVF*KBE&JD-Q&BRQP#"IY
M0M&,Q3'FHKX6RDAZ)7=V_6'7=8Y,7#//[?F^LON1D>U24:?DWYA:5R!ST&8E
M4S%:U--7IHH\&I_H.ML4BT\T69%^@_F&4(%B6"M*M9G42X1G=6_6D2PUI>.2
M2>4!TXS4MP)P/4'=7S,F#QV]0/'U$?P#4$L#!!0    ( #. -5=,4TA#:P,
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
M+'@91XX#,+/$[.D%0: V"/1Z5&H"TL9@=/2"&%H=A$:I^BXRR;73BB0J4,H
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
MF/CL\X02TXV>SD#=ANY=:'2S(&P;-ZW!> =WO]0:GPT_$(;Y7_P#4$L#!!0
M   ( #. -5?-#*LVHP(  (<'   9    >&PO=V]R:W-H965T<R]S:&5E=#4V
M+GAM;*U576_3,!3]*U9 L$G0I$F;32.-M+:; &FH6C5X0#RXR6UCS;$SVVFW
M?X\_LI".K&(3+XD_[CD^Y]J^3G9<W,H"0*'[DC(Y\0JEJC/?EUD!)98#7@'3
M,VLN2JQT5VQ\60G N065U ^#(/9+3)B7)G9L(=*$UXH2!@N!9%V66#Q,@?+=
MQ!MZCP/79%,H,^"G284WL 1U4RV$[ODM2TY*8))PA@2L)][Y\&P6FW@;\)W
M3G;:R#A9<7YK.E_RB1<804 A4X8!Z]\69D"I(=(R[AI.KUW2 +OM1_9+ZUU[
M66$),TY_D%P5$^_40SFL<4W5-=]]AL;/V/!EG$K[13L7.QYY**NEXF4#U@I*
MPMP?WS=YZ "&\3. L &$3P'/K1 U@,@:=<JLK3E6.$T$WR%AHC6;:=C<6+1V
M0YC9Q:42>I9HG$J7BF>W!:<Y"/D>7=S51#V@HSDH3*@\1A_1S7*.CMX>)[[2
MJQF,GS7,4\<</L,\#-$59ZJ0Z(+ED.\3^%IFJS5\U#H-#S)^K=D 1<$'% 9A
MU"-H]N_P\("<J$U=9/FBEZ3N&U> ?IZOI!+ZA/[J2YMC'?6SFEM[)BN<P<33
MUU*"V(*7OGLSC(-/?9;_$]E> D9M D:'V--%+;)"7R$D"ZS9$5^CC)>EOIS2
MI*;/NR,<6T)38+;I, KB<9SXVZZKO\/"41R>1&W8GMYQJW=\4.\,RP+E9$MR
M8+F6R_;DHB/"T)Q3BH5$%0CGJO?@NV5.._*"0?C$PD$IK]R8N#4:O\1HQUBO
MG8-D+SV0KR!#?9;]3DTK06QLJ9=ZQVJF7,EH1]O7Y-P6T2?C4_W*N$?A#XU[
MHJZPV! F$86UI@P&)WK/A"O[KJ-X92OGBBM=AVVST"\E"!.@Y]=<W_:F8Q9H
MW][T-U!+ P04    "  S@#575QW+28H"   J!P  &0   'AL+W=O<FMS:&5E
M=',O<VAE970U-RYX;6R]5=M.W# 0_14KE7J16G)?"LU&*DL15&V%6+5]J/K@
M368W%G8<;&<7_KYC)T0+A!5455\27^;,G#-CC[.-5)>Z C#D6O!:3[W*F.;0
M]W51@:!Z3S90X\Y2*D$-3M7*UXT"6CJ0X'X4!!-?4%9[>>;6SE6>R=9P5L.Y
M(KH5@JJ;(^!R,_5"[W;A@JTJ8Q?\/&OH"N9@OC?G"F?^X*5D FK-9$T4+*?>
MQ_!PEEI[9_"#P49OC8E5LI#RTD[.RJD76$+ H3#6 \7?&F; N76$-*YZG]X0
MT@*WQ[?>3YQVU+*@&F:2_V2EJ:;>>X^4L*0M-Q=R<PJ]'D>PD%R[+]GTMH%'
MBE8;*7HP,A"L[O[TNL_#%B!,'@%$/2!Z*B#N ;$3VC%SLHZIH7FFY(8H:XW>
M[,#EQJ%1#:MM%>=&X2Y#G,GG1A:7E>0E*/V*?+IJF;DAKX_!4,;U&_*.S/'<
ME"T'(I?D C2H-91D)H7 &LPKJD 3/$ODI#6M G*F=4OK A"HW6;F&V1I8_E%
MS^BH8Q0]PNAS6^^1.'A+HB"*1^"SI\.CNW ?<S,D*!H2%#E_\7].T*\O&(B<
M&1#Z]UB2.E;)."M[MP]U0PN8>GAY75 O?_DBG 0?QE+VCYS=26 \)##>Y;U+
M()&-O;6:8"/1AM8EJU=CJCM7J7-E&] ZCPXF<1QF_GI;SXA9,HGVX\'L#M-D
M8)H\@RE=8X7I @MKR\?ZNHV13AZP"=,DG!S<([TS^%\6(1VDI3NE?6O% I0]
MHD5W,KO;2?I(Y9BL](&L) W2(+@G:V?@Y\KRMSJ9?46^4K5B6 P.2W0?[.UC
M--5UYFYB9..:VT(:;)5N6.%C!LH:X/Y22G,[L?UR>![S/U!+ P04    "  S
M@#57S>(G\:H$  #B%0  &0   'AL+W=O<FMS:&5E=',O<VAE970U."YX;6S5
M6-^3VC80_E<T3B>]S"1G2P8#%V FQUVGZ30I<\PU#YT^Z.P%/&=;1)(A^>\K
MV3X;@U"@T(>^@'_L?MIO=]%^:+AA_%DL 23ZEB:9&#E+*5<WKBO"):147+,5
M9.K-G/&42G7+%ZY8<:!1X90F+O&\P$UIG#GC8?%LRL=#ELLDSF#*D<C3E/+O
MMY"PS<C!SLN#AWBQE/J!.QZNZ )F(!]74Z[NW!HEBE/(1,PRQ&$^<C[@FPDI
M' J+/V/8B*UKI*D\,?:L;SY&(\?3$4$"H=005'VM80))HI%4'%\K4*=>4SMN
M7[^@_U*05V2>J( )2[[$D5R.G+Z#(IC3/)$/;/,K5(2Z&B]DB2@^T::R]1P4
MYD*RM')6$:1Q5G[3;U4BMAQP<,"!5 YDUZ%SP,&O'/R":!E90>N.2CH><K9!
M7%LK-'U1Y*;P5FSB3)=Q)KEZ&RL_.9Y)%CXO61(!%S^C^Z]Y++^CJSN0-$[$
M&_0.S53C1'D"B,W1 X0L"^,DID4)U!.Y!/0Y3X%3R;A -(O0'61,!5H^J$QN
MJ8C#\FV<Y!(B=$]Y%F<+@:; T6Q).: )2U>Y+*"%6OAQ=H>N?GHS=*6BJ8-U
MPXK2;4F)'*"$"?K$,KD4Z#Z+(&H#N"H_=9+(2Y)NB17QMSR[1K[W%A&/^(:
M)L>[$TLX?ETSO\#S_V<U^^MW%2CZ*"$5?YO*5K+JF%GI_>I&K&@((T=M2 +X
M&ISQZU<X\-Z;4GXAL%8!.G4!.C;T\6>UO<99R%) 5PD3*N=7<8;N6))0+HP=
M6^(%!9[>6==C/^CUL(^'[GJ;U;X=)D$7DUYMUPJX6P?<M79,6<O[Z>S&%%SW
MDG6Y$%B+9E#3#*QU4=V8JAX7NC55'^=22-6_JF7?HB=8Q)GN7MW>*^ QBTRI
M*/&[6_DG/8\$OK]3IQ_;M0CT:@*]$PC$0N3J9R<9NI_],451SG7\^K=YF( 5
MWYQ^9"KC^3BM!/3K!/2M"7C,0&TR>J_1C,L\F&CV]_+_CG0#,MBMD\FN-^B0
M@;E.@SK,@37,+X4Z4&'2M=I&%X!"4^&.*IAUH1,*=CY.*Q/8:P2$=TXN5CD/
METIG'9D.^V(GY.,"0.V$;"DJ?%I"MGH95>U]7"[P7O?VNSC8:7&35<_SS V.
M2<."6%EL20*D_BUHK:Q&"+Q( !7U3J%?O^H3C-\C>S\8>9+]W;33[?2[>U1-
MACX>>)T#;!M%A>V2JI8X!T8DOJAVN11:FVRC7K!=OIP_)JL%?CPGCS!LDV@4
M#;8JB0N,2OL"IVPUYP.UD]#H'6P7/,>.2[RO5\SSTFAH&9BX43;8+FTN.#+M
M*YU2N NK'-S('&S7.1<>FM;%3DG(^4#MA#2""I^HJ/[UT!P<-30-5@>')FFT
M$#E1"T5ZKL1K0#"?0RCUKBKTOW?$5L5_9A.#:HWMV'"@-O\="O903J\5:00.
ML0N<76D05</S/Q$'9%_>D$X/>WLE-1J:Q(&[=5J6 E\4AXA"19)GLCP3JI_6
M!Y4?BN.YG>>W^&92'C<V,.7IYR?*U1P5*(&Y@O2N>RHJ7AXHEC>2K8HSN2<F
M)4N+RR70"+@V4._GC,F7&[U ?:P[_@=02P,$%     @ ,X U5^M-)M9\ @
MF08  !D   !X;"]W;W)K<VAE971S+W-H965T-3DN>&ULM95M;],P$,>_BA40
MVB34I.D3C#32NH(H6K6IT^ %XH6;7!IK?BBVTV[?GK.3AH*Z2""M+QJ????W
M[\[Q)=DK_6!* $L>!9=F&I36;B_"T&0E"&IZ:@L25PJE!;5HZDUHMAIH[H,$
M#^,H&H>",AFDB9^[U6FB*LN9A%M-3"4$U4\SX&H_#?K!86+%-J5U$V&:;.D&
M[L#>;V\U6F&KDC,!TC EB89B&ESV+V83Y^\=OC+8FZ,Q<9FLE7IPQB*?!I$#
M @Z9=0H4'SNX LZ=$&+\;#2#=DL7>#P^J'_RN6,N:VK@2O%O++?E-'@7D!P*
M6G&[4OO/T.0S<GJ9XL;_DWWM.T3GK#)6B288"023]9,^-G4X"HCC9P+B)B#V
MW/5&GG).+4T3K?9$.V]4<P.?JH]&.";=H=Q9C:L,XVQZC391!;G2D#-+SN9@
M*>/F/ DMJCN?,&N49K52_(Q2/R9+)6UIR$>90_ZG0(A8+5M\8)O%G8I?*MDC
M@^@MB:-X0.[OYN3L]7F'[J#->>!U!_^8,_GN5Q86A/EQJ@"U[/"TK+L^%V9+
M,Y@&>#\,Z!T$Z9M7_7'TH0-ZV$(/N]33)7UDHA*$"E5)Z_!YDT;FTSC%6RN.
MO:*[G;MT$/E?$NY.H(Q:E%$GRK62.5ZHA;2@UU0^D)NB (0@*VK!D+/KQ>QF
MA=5<@EB#/EG)S@W^LY+C%G_\,L<_?@'H20L]Z:SY'!&?2,$5M4QNB,9*GT*L
M1=X?G7C4B^*_CCL\:A<"],8W14,R]V+5G:.=;?ON9=UN?KO737M)]89)0S@4
M&!KU)GBPNFZ$M6'5UC>?M;+8RORPQ&\':.> ZX52]F"X#=JO4?H+4$L#!!0
M   ( #2 -5>U+7E8/@4  #(=   9    >&PO=V]R:W-H965T<R]S:&5E=#8P
M+GAM;+V9VV[C-A"&7X50BR(!FH@'G9S:!G)HVBV0(MTT[<6B%XI-Q\)*HDO2
M\>[;ESI$M&2*M@IA;V)+GOGUSXC21X;3'>.?Q9I2";YD:2YFSEK*S97KBL6:
M9K&X9!N:JU]6C&>Q5(?\U14;3N-EF92E+H8P<+,XR9WYM#SWR.=3MI5IDM-'
M#L0VRV+^]8:F;#=SD/-^XF/RNI;%"7<^W<2O](G*Y\TC5T=NH[),,IJ+A.6
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
MDB3)LC "6-A!DF (/(TX@CD #QB2).X</#B/XLTY%6]_.1K_!E!+ P04
M"  T@#57EXJ[',     3 @  "P   %]R96QS+RYR96QSG9*Y;L,P#$!_Q=">
M, ?0(8@S9?$6!/D!5J(/V!(%BD6=OZ_:I7&0"QEY/3P2W!YI0.TXI+:+J1C]
M$%)I6M6X 4BV)8]ISI%"KM0L'C6'TD!$VV-#L%HL/D N&6:WO606IW.D5XA<
MUYVE/=LO3T%O@*\Z3'%":4A+,P[PS=)_,O?S##5%Y4HCE5L:>-/E_G;@2=&A
M(E@6FD7)TZ(=I7\=Q_:0T^FO8R*T>EOH^7%H5 J.W&,EC'%BM/XU@LD/['X
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
M_D]97ZQ=_?7?'MT];TS5'O-9_TO-[ U02P$"% ,4    "  S@#57!T%-8H$
M  "Q    $               @ $     9&]C4')O<',O87!P+GAM;%!+ 0(4
M Q0    ( #. -5<,4\ZA[0   "L"   1              "  :\   !D;V-0
M<F]P<R]C;W)E+GAM;%!+ 0(4 Q0    ( #. -5>97)PC$ 8  )PG   3
M          "  <L!  !X;"]T:&5M92]T:&5M93$N>&UL4$L! A0#%     @
M,X U5^ CL_JA!P  %S(  !@              ("!# @  'AL+W=O<FMS:&5E
M=',O<VAE970Q+GAM;%!+ 0(4 Q0    ( #. -5?06Q90E0<  (0>   8
M          " @>,/  !X;"]W;W)K<VAE971S+W-H965T,BYX;6Q02P$"% ,4
M    "  S@#57@U]@QP<#   W"0  &               @(&N%P  >&PO=V]R
M:W-H965T<R]S:&5E=#,N>&UL4$L! A0#%     @ ,X U5TX9G9P1!0  0Q0
M !@              ("!ZQH  'AL+W=O<FMS:&5E=',O<VAE970T+GAM;%!+
M 0(4 Q0    ( #. -5?"Q$2<5P8  ,<M   8              " @3(@  !X
M;"]W;W)K<VAE971S+W-H965T-2YX;6Q02P$"% ,4    "  S@#57MA*'0Z,"
M  "Z!@  &               @(&_)@  >&PO=V]R:W-H965T<R]S:&5E=#8N
M>&UL4$L! A0#%     @ ,X U5X7"I^=:!P  NQ\  !@              ("!
MF"D  'AL+W=O<FMS:&5E=',O<VAE970W+GAM;%!+ 0(4 Q0    ( #. -5<@
M;.LCN (   \&   8              " @2@Q  !X;"]W;W)K<VAE971S+W-H
M965T."YX;6Q02P$"% ,4    "  S@#57FVV],SX7  "C/P  &
M    @($6-   >&PO=V]R:W-H965T<R]S:&5E=#DN>&UL4$L! A0#%     @
M,X U5\[%TM7D!@  B!   !D              ("!BDL  'AL+W=O<FMS:&5E
M=',O<VAE970Q,"YX;6Q02P$"% ,4    "  S@#57'24__:$$  !X"P  &0
M            @(&E4@  >&PO=V]R:W-H965T<R]S:&5E=#$Q+GAM;%!+ 0(4
M Q0    ( #. -5?U1ANT$0,  /@&   9              " @7U7  !X;"]W
M;W)K<VAE971S+W-H965T,3(N>&UL4$L! A0#%     @ ,X U5R_@Z_L8!0
M&PL  !D              ("!Q5H  'AL+W=O<FMS:&5E=',O<VAE970Q,RYX
M;6Q02P$"% ,4    "  S@#57V -J.'L$   7"@  &0              @($4
M8   >&PO=V]R:W-H965T<R]S:&5E=#$T+GAM;%!+ 0(4 Q0    ( #. -5<-
MTKM]:@@  /@3   9              " @<9D  !X;"]W;W)K<VAE971S+W-H
M965T,34N>&UL4$L! A0#%     @ ,X U5P<F1-$J P  4P<  !D
M     ("!9VT  'AL+W=O<FMS:&5E=',O<VAE970Q-BYX;6Q02P$"% ,4
M"  S@#57.LSG N4%  "B#0  &0              @('(<   >&PO=V]R:W-H
M965T<R]S:&5E=#$W+GAM;%!+ 0(4 Q0    ( #. -5>\+W5X50P  )<@   9
M              " @>1V  !X;"]W;W)K<VAE971S+W-H965T,3@N>&UL4$L!
M A0#%     @ ,X U5Q"\ ])K!   3 H  !D              ("!<(,  'AL
M+W=O<FMS:&5E=',O<VAE970Q.2YX;6Q02P$"% ,4    "  S@#571DX4YZX#
M  "S"   &0              @($2B   >&PO=V]R:W-H965T<R]S:&5E=#(P
M+GAM;%!+ 0(4 Q0    ( #. -5??^G-(_00  #T+   9              "
M@?>+  !X;"]W;W)K<VAE971S+W-H965T,C$N>&UL4$L! A0#%     @ ,X U
M5TS1]:_@!   (@T  !D              ("!*Y$  'AL+W=O<FMS:&5E=',O
M<VAE970R,BYX;6Q02P$"% ,4    "  S@#57Y?"UG$D#   .!P  &0
M        @(%"E@  >&PO=V]R:W-H965T<R]S:&5E=#(S+GAM;%!+ 0(4 Q0
M   ( #. -5<VL=2C'P,  #@'   9              " @<*9  !X;"]W;W)K
M<VAE971S+W-H965T,C0N>&UL4$L! A0#%     @ ,X U5WJ4N?A\&   3$@
M !D              ("!&)T  'AL+W=O<FMS:&5E=',O<VAE970R-2YX;6Q0
M2P$"% ,4    "  S@#57;>'R_9,"  "S!0  &0              @('+M0
M>&PO=V]R:W-H965T<R]S:&5E=#(V+GAM;%!+ 0(4 Q0    ( #. -5?\^$:\
M$ 0  $0*   9              " @96X  !X;"]W;W)K<VAE971S+W-H965T
M,C<N>&UL4$L! A0#%     @ ,X U5R8ZT2-U @  A04  !D
M ("!W+P  'AL+W=O<FMS:&5E=',O<VAE970R."YX;6Q02P$"% ,4    "  S
M@#57N!L"5]P"  !,!@  &0              @(&(OP  >&PO=V]R:W-H965T
M<R]S:&5E=#(Y+GAM;%!+ 0(4 Q0    ( #. -5?5;\L,ZP0  )D+   9
M          " @9O"  !X;"]W;W)K<VAE971S+W-H965T,S N>&UL4$L! A0#
M%     @ ,X U5VO2-L2A @  N@4  !D              ("!O<<  'AL+W=O
M<FMS:&5E=',O<VAE970S,2YX;6Q02P$"% ,4    "  S@#574#_!=MD$  "D
M"P  &0              @(&5R@  >&PO=V]R:W-H965T<R]S:&5E=#,R+GAM
M;%!+ 0(4 Q0    ( #. -5<51Y\Z&P0  .\+   9              " @:7/
M  !X;"]W;W)K<VAE971S+W-H965T,S,N>&UL4$L! A0#%     @ ,X U5^?$
M-@ F P  # <  !D              ("!]],  'AL+W=O<FMS:&5E=',O<VAE
M970S-"YX;6Q02P$"% ,4    "  S@#57$:&PHAH"   ;!0  &0
M    @(%4UP  >&PO=V]R:W-H965T<R]S:&5E=#,U+GAM;%!+ 0(4 Q0    (
M #. -5?S0/UT/0,  #D2   9              " @:79  !X;"]W;W)K<VAE
M971S+W-H965T,S8N>&UL4$L! A0#%     @ ,X U5Q-"9ZP6!   BQ0  !D
M             ("!&=T  'AL+W=O<FMS:&5E=',O<VAE970S-RYX;6Q02P$"
M% ,4    "  S@#57<N-=A$X$  !U%@  &0              @(%FX0  >&PO
M=V]R:W-H965T<R]S:&5E=#,X+GAM;%!+ 0(4 Q0    ( #. -5=+2//*>P(
M &H&   9              " @>OE  !X;"]W;W)K<VAE971S+W-H965T,SDN
M>&UL4$L! A0#%     @ ,X U5V54C8UA @  [@4  !D              ("!
MG>@  'AL+W=O<FMS:&5E=',O<VAE970T,"YX;6Q02P$"% ,4    "  S@#57
M[9?A,*$#   :$0  &0              @($UZP  >&PO=V]R:W-H965T<R]S
M:&5E=#0Q+GAM;%!+ 0(4 Q0    ( #. -5>GD=!<LP,  %L2   9
M      " @0WO  !X;"]W;W)K<VAE971S+W-H965T-#(N>&UL4$L! A0#%
M  @ ,X U5R^"0 BT @  G@<  !D              ("!]_(  'AL+W=O<FMS
M:&5E=',O<VAE970T,RYX;6Q02P$"% ,4    "  S@#577D.+XMT"   +"
M&0              @('B]0  >&PO=V]R:W-H965T<R]S:&5E=#0T+GAM;%!+
M 0(4 Q0    ( #. -5?^SUYGOP,  ' ,   9              " @?;X  !X
M;"]W;W)K<VAE971S+W-H965T-#4N>&UL4$L! A0#%     @ ,X U5W*6\'.9
M P  GPL  !D              ("![/P  'AL+W=O<FMS:&5E=',O<VAE970T
M-BYX;6Q02P$"% ,4    "  S@#57(5R^YR #  ")#   &0
M@(&\  $ >&PO=V]R:W-H965T<R]S:&5E=#0W+GAM;%!+ 0(4 Q0    ( #.
M-5=,4TA#:P,  (,+   9              " @1,$ 0!X;"]W;W)K<VAE971S
M+W-H965T-#@N>&UL4$L! A0#%     @ ,X U5Q63ZJ6O @  )P<  !D
M         ("!M0<! 'AL+W=O<FMS:&5E=',O<VAE970T.2YX;6Q02P$"% ,4
M    "  S@#57]?>%1W8&  #T)@  &0              @(&;"@$ >&PO=V]R
M:W-H965T<R]S:&5E=#4P+GAM;%!+ 0(4 Q0    ( #. -5>&I)0"2 ,  %4)
M   9              " @4@1 0!X;"]W;W)K<VAE971S+W-H965T-3$N>&UL
M4$L! A0#%     @ ,X U5_<5?$2A!   ^A0  !D              ("!QQ0!
M 'AL+W=O<FMS:&5E=',O<VAE970U,BYX;6Q02P$"% ,4    "  S@#57/0ZC
M-%0#  !7"P  &0              @(&?&0$ >&PO=V]R:W-H965T<R]S:&5E
M=#4S+GAM;%!+ 0(4 Q0    ( #. -5=J1.,-C@(  *(&   9
M  " @2H= 0!X;"]W;W)K<VAE971S+W-H965T-30N>&UL4$L! A0#%     @
M,X U5RC;@K8X @  "P8  !D              ("![Q\! 'AL+W=O<FMS:&5E
M=',O<VAE970U-2YX;6Q02P$"% ,4    "  S@#57S0RK-J,"  "'!P  &0
M            @(%>(@$ >&PO=V]R:W-H965T<R]S:&5E=#4V+GAM;%!+ 0(4
M Q0    ( #. -5=7'<M)B@(  "H'   9              " @3@E 0!X;"]W
M;W)K<VAE971S+W-H965T-3<N>&UL4$L! A0#%     @ ,X U5\WB)_&J!
MXA4  !D              ("!^2<! 'AL+W=O<FMS:&5E=',O<VAE970U."YX
M;6Q02P$"% ,4    "  S@#57ZTTFUGP"  "9!@  &0              @(':
M+ $ >&PO=V]R:W-H965T<R]S:&5E=#4Y+GAM;%!+ 0(4 Q0    ( #2 -5>U
M+7E8/@4  #(=   9              " @8TO 0!X;"]W;W)K<VAE971S+W-H
M965T-C N>&UL4$L! A0#%     @ -( U5S8P94<H P  1A(   T
M     ( ! C4! 'AL+W-T>6QE<RYX;6Q02P$"% ,4    "  T@#57EXJ[',
M   3 @  "P              @ %5. $ 7W)E;',O+G)E;'-02P$"% ,4
M"  T@#57D*Q_#\P$  #=)P  #P              @ $^.0$ >&PO=V]R:V)O
M;VLN>&UL4$L! A0#%     @ -( U5Y@;6I[[ 0  RR,  !H
M ( !-SX! 'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR96QS4$L! A0#%     @
M-( U5W32QF+> 0  6B,  !,              ( !:D ! %M#;VYT96YT7U1Y
><&5S72YX;6Q02P4&     $0 1 "3$@  >4(!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>75
<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>76
<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>77
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.23.3</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>94</ContextCount>
  <ElementCount>287</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>40</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>4</UnitCount>
  <MyReports>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>000 - Document - Document And Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/DocumentAndEntityInformation</Role>
      <ShortName>Document And Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>001 - 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-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>002 - 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-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>003 - Statement - Statements of Comprehensive Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ConsolidatedIncomeStatement</Role>
      <ShortName>Statements of Comprehensive Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>004 - Statement - Statements of Changes in Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ShareholdersEquityType2or3</Role>
      <ShortName>Statements of Changes in Stockholders' Equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>005 - Statement - Statements of Changes in Stockholders' Equity (Parentheticals)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ShareholdersEquityType2or3_Parentheticals</Role>
      <ShortName>Statements of Changes in Stockholders' Equity (Parentheticals)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>006 - Statement - Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ConsolidatedCashFlow</Role>
      <ShortName>Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>007 - Disclosure - Nature of Operations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/NatureofOperations</Role>
      <ShortName>Nature of Operations</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>008 - Disclosure - Summary of Significant Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/SummaryofSignificantAccountingPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>009 - Disclosure - Revenue</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/Revenue</Role>
      <ShortName>Revenue</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>010 - Disclosure - Investment Securities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/InvestmentSecurities</Role>
      <ShortName>Investment Securities</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>011 - Disclosure - Contracts in Process</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ContractsinProcess</Role>
      <ShortName>Contracts in Process</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>012 - Disclosure - Property, Plant and Equipment</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/PropertyPlantandEquipment</Role>
      <ShortName>Property, Plant and Equipment</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>013 - Disclosure - Pension Expense</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/PensionExpense</Role>
      <ShortName>Pension Expense</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>014 - Disclosure - Provision for Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ProvisionforIncomeTaxes</Role>
      <ShortName>Provision for Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>015 - Disclosure - Significant Customers</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/SignificantCustomers</Role>
      <ShortName>Significant Customers</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>016 - 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>17</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>017 - Disclosure - Stock-Based Compensation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/StockBasedCompensation</Role>
      <ShortName>Stock-Based Compensation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>018 - Disclosure - Concentration of Credit Risk</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ConcentrationofCreditRisk</Role>
      <ShortName>Concentration of Credit Risk</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>019 - Disclosure - Related Parties</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/RelatedParties</Role>
      <ShortName>Related Parties</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>020 - Disclosure - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/CommitmentsandContingencies</Role>
      <ShortName>Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>021 - Disclosure - Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/StockholdersEquity</Role>
      <ShortName>Stockholders' Equity</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>022 - Disclosure - Line of Credit</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/LineofCredit</Role>
      <ShortName>Line of Credit</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>023 - Disclosure - Quarterly Financial Information (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/QuarterlyFinancialInformationUnaudited</Role>
      <ShortName>Quarterly Financial Information (Unaudited)</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>024 - Disclosure - Accounting Policies, by Policy (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/AccountingPoliciesByPolicy</Role>
      <ShortName>Accounting Policies, by Policy (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://espey.com/role/SummaryofSignificantAccountingPolicies</ParentRole>
      <Position>25</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>025 - Disclosure - Summary of Significant Accounting Policies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/SummaryofSignificantAccountingPoliciesTables</Role>
      <ShortName>Summary of Significant Accounting Policies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://espey.com/role/SummaryofSignificantAccountingPolicies</ParentRole>
      <Position>26</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>026 - 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>27</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>027 - Disclosure - Contracts in Process (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ContractsinProcessTables</Role>
      <ShortName>Contracts in Process (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://espey.com/role/ContractsinProcess</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>028 - Disclosure - Property, Plant and Equipment (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/PropertyPlantandEquipmentTables</Role>
      <ShortName>Property, Plant and Equipment (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://espey.com/role/PropertyPlantandEquipment</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>029 - Disclosure - Provision for Income Taxes (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ProvisionforIncomeTaxesTables</Role>
      <ShortName>Provision for Income Taxes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://espey.com/role/ProvisionforIncomeTaxes</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>030 - 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>31</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>031 - 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>32</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>032 - Disclosure - Stockholders' Equity (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/StockholdersEquityTables</Role>
      <ShortName>Stockholders' Equity (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://espey.com/role/StockholdersEquity</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>033 - Disclosure - Quarterly Financial Information (Unaudited) (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/QuarterlyFinancialInformationUnauditedTables</Role>
      <ShortName>Quarterly Financial Information (Unaudited) (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://espey.com/role/QuarterlyFinancialInformationUnaudited</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>034 - Disclosure - Summary of Significant Accounting Policies (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/SummaryofSignificantAccountingPoliciesDetails</Role>
      <ShortName>Summary of Significant Accounting Policies (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/SummaryofSignificantAccountingPoliciesTables</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>035 - Disclosure - Summary of Significant Accounting Policies (Details) - Schedule of the Estimated Useful Lives of Depreciable Assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable</Role>
      <ShortName>Summary of Significant Accounting Policies (Details) - Schedule of the Estimated Useful Lives of Depreciable Assets</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/SummaryofSignificantAccountingPoliciesTables</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>036 - 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>37</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>037 - Disclosure - Investment Securities (Details) - Schedule of Available-for-Sale Securities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofAvailableforSaleSecuritiesTable</Role>
      <ShortName>Investment Securities (Details) - Schedule of Available-for-Sale Securities</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/InvestmentSecuritiesTables</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>038 - Disclosure - Investment Securities (Details) - Schedule of Contractual Maturities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofContractualMaturitiesTable</Role>
      <ShortName>Investment Securities (Details) - Schedule of Contractual Maturities</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/InvestmentSecuritiesTables</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>039 - Disclosure - Contracts in Process (Details) - Schedule of Contracts in Process</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofContractsinProcessTable</Role>
      <ShortName>Contracts in Process (Details) - Schedule of Contracts in Process</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/ContractsinProcessTables</ParentRole>
      <Position>40</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>040 - Disclosure - Property, Plant and Equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/PropertyPlantandEquipmentDetails</Role>
      <ShortName>Property, Plant and Equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/PropertyPlantandEquipmentTables</ParentRole>
      <Position>41</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>041 - Disclosure - Property, Plant and Equipment (Details) - Schedule of Property, Plant and Equipment</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofPropertyPlantandEquipmentTable</Role>
      <ShortName>Property, Plant and Equipment (Details) - Schedule of Property, Plant and Equipment</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/PropertyPlantandEquipmentTables</ParentRole>
      <Position>42</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>042 - Disclosure - Pension Expense (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/PensionExpenseDetails</Role>
      <ShortName>Pension Expense (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/PensionExpense</ParentRole>
      <Position>43</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>043 - Disclosure - Provision for Income Taxes (Details) - Schedule of Components of the Provision for Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofComponentsoftheProvisionforIncomeTaxesTable</Role>
      <ShortName>Provision for Income Taxes (Details) - Schedule of Components of the Provision for Income Taxes</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/ProvisionforIncomeTaxesTables</ParentRole>
      <Position>44</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>044 - Disclosure - Provision for Income Taxes (Details) - Schedule of Effective Income Tax Rates</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofEffectiveIncomeTaxRatesTable</Role>
      <ShortName>Provision for Income Taxes (Details) - Schedule of Effective Income Tax Rates</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/ProvisionforIncomeTaxesTables</ParentRole>
      <Position>45</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>045 - Disclosure - Provision for Income Taxes (Details) - Schedule of Deferred Tax Assets and Liabilities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable</Role>
      <ShortName>Provision for Income Taxes (Details) - Schedule of Deferred Tax Assets and Liabilities</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/ProvisionforIncomeTaxesTables</ParentRole>
      <Position>46</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>046 - Disclosure - Significant Customers (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/SignificantCustomersDetails</Role>
      <ShortName>Significant Customers (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/SignificantCustomers</ParentRole>
      <Position>47</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>047 - 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>48</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>048 - Disclosure - Employee Stock Ownership Plan (Details) - Schedule of ESOP Shares</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofESOPSharesTable</Role>
      <ShortName>Employee Stock Ownership Plan (Details) - Schedule of ESOP Shares</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/EmployeeStockOwnershipPlanTables</ParentRole>
      <Position>49</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>049 - 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>50</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>050 - Disclosure - Stock-Based Compensation (Details) - Schedule of Weighted Average Assumptions for Option Awards</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofWeightedAverageAssumptionsforOptionAwardsTable</Role>
      <ShortName>Stock-Based Compensation (Details) - Schedule of Weighted Average Assumptions for Option Awards</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/StockBasedCompensationTables</ParentRole>
      <Position>51</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>051 - Disclosure - Stock-Based Compensation (Details) - Schedule of Stock Option Activity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofStockOptionActivityTable</Role>
      <ShortName>Stock-Based Compensation (Details) - Schedule of Stock Option Activity</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/StockBasedCompensationTables</ParentRole>
      <Position>52</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>052 - Disclosure - Stock-Based Compensation (Details) - Schedule of Changes in Non-Vested Stock Options</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable</Role>
      <ShortName>Stock-Based Compensation (Details) - Schedule of Changes in Non-Vested Stock Options</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/StockBasedCompensationTables</ParentRole>
      <Position>53</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>053 - Disclosure - Concentration of Credit Risk (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ConcentrationofCreditRiskDetails</Role>
      <ShortName>Concentration of Credit Risk (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/ConcentrationofCreditRisk</ParentRole>
      <Position>54</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>054 - 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>55</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>055 - Disclosure - Stockholders' Equity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/StockholdersEquityDetails</Role>
      <ShortName>Stockholders' Equity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/StockholdersEquityTables</ParentRole>
      <Position>56</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>056 - Disclosure - Stockholders' Equity (Details) - Schedule of Reserved Common Shares for Future Issuance</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofReservedCommonSharesforFutureIssuanceTable</Role>
      <ShortName>Stockholders' Equity (Details) - Schedule of Reserved Common Shares for Future Issuance</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/StockholdersEquityTables</ParentRole>
      <Position>57</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>057 - Disclosure - Stockholders' Equity (Details) - Schedule of Reconciliation of the Numerators and Denominators of the Basic and Diluted Earnings Per Share Computations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable</Role>
      <ShortName>Stockholders' Equity (Details) - Schedule of Reconciliation of the Numerators and Denominators of the Basic and Diluted Earnings Per Share Computations</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/StockholdersEquityTables</ParentRole>
      <Position>58</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>058 - Disclosure - Line of Credit (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/LineofCreditDetails</Role>
      <ShortName>Line of Credit (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/LineofCredit</ParentRole>
      <Position>59</Position>
    </Report>
    <Report instance="esp-20230630.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>059 - Disclosure - Quarterly Financial Information (Unaudited) (Details) - Schedule of Quarterly Financial Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://espey.com/role/ScheduleofQuarterlyFinancialInformationTable</Role>
      <ShortName>Quarterly Financial Information (Unaudited) (Details) - Schedule of Quarterly Financial Information</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://espey.com/role/QuarterlyFinancialInformationUnauditedTables</ParentRole>
      <Position>60</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-K" isDefinitelyFs="true" isUsgaap="true" original="esp-20230630.htm">esp-20230630.htm</File>
    <File>esp-20230630.xsd</File>
    <File>esp-20230630_cal.xml</File>
    <File>esp-20230630_def.xml</File>
    <File>esp-20230630_lab.xml</File>
    <File>esp-20230630_pre.xml</File>
  </InputFiles>
  <SupplementalFiles>
    <File>image_001.jpg</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy items="529">http://fasb.org/us-gaap/2023</BaseTaxonomy>
    <BaseTaxonomy items="37">http://xbrl.sec.gov/dei/2023</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>79
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "esp-20230630.htm": {
   "nsprefix": "esp",
   "nsuri": "http://espey.com/20230630",
   "dts": {
    "inline": {
     "local": [
      "esp-20230630.htm"
     ]
    },
    "schema": {
     "local": [
      "esp-20230630.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/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/2023/elts/srt-2023.xsd",
      "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd",
      "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd",
      "https://xbrl.sec.gov/country/2023/country-2023.xsd",
      "https://xbrl.sec.gov/dei/2023/dei-2023.xsd",
      "https://xbrl.sec.gov/sic/2023/sic-2023.xsd"
     ]
    },
    "calculationLink": {
     "local": [
      "esp-20230630_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "esp-20230630_def.xml"
     ]
    },
    "labelLink": {
     "local": [
      "esp-20230630_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "esp-20230630_pre.xml"
     ]
    }
   },
   "keyStandard": 253,
   "keyCustom": 34,
   "axisStandard": 15,
   "axisCustom": 1,
   "memberStandard": 22,
   "memberCustom": 18,
   "hidden": {
    "total": 36,
    "http://fasb.org/us-gaap/2023": 30,
    "http://xbrl.sec.gov/dei/2023": 3,
    "http://espey.com/20230630": 3
   },
   "contextCount": 94,
   "entityCount": 1,
   "segmentCount": 40,
   "elementCount": 459,
   "unitCount": 4,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2023": 529,
    "http://xbrl.sec.gov/dei/2023": 37
   },
   "report": {
    "R1": {
     "role": "http://espey.com/role/DocumentAndEntityInformation",
     "longName": "000 - Document - Document And Entity Information",
     "shortName": "Document And Entity Information",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "dei:EntityRegistrantName",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "dei:EntityRegistrantName",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R2": {
     "role": "http://espey.com/role/ConsolidatedBalanceSheet",
     "longName": "001 - Statement - Balance Sheets",
     "shortName": "Balance Sheets",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "2",
     "firstAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R3": {
     "role": "http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals",
     "longName": "002 - Statement - Balance Sheets (Parentheticals)",
     "shortName": "Balance Sheets (Parentheticals)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "3",
     "firstAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:CommonStockSharesAuthorized",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "unique": true
     }
    },
    "R4": {
     "role": "http://espey.com/role/ConsolidatedIncomeStatement",
     "longName": "003 - Statement - Statements of Comprehensive Income",
     "shortName": "Statements of Comprehensive Income",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "4",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:Revenues",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:CostOfRevenue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "unique": true
     }
    },
    "R5": {
     "role": "http://espey.com/role/ShareholdersEquityType2or3",
     "longName": "004 - Statement - Statements of Changes in Stockholders' Equity",
     "shortName": "Statements of Changes in Stockholders' Equity",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "5",
     "firstAnchor": {
      "contextRef": "c6",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c6",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R6": {
     "role": "http://espey.com/role/ShareholdersEquityType2or3_Parentheticals",
     "longName": "005 - Statement - Statements of Changes in Stockholders' Equity (Parentheticals)",
     "shortName": "Statements of Changes in Stockholders' Equity (Parentheticals)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "6",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R7": {
     "role": "http://espey.com/role/ConsolidatedCashFlow",
     "longName": "006 - Statement - Statements of Cash Flows",
     "shortName": "Statements of Cash Flows",
     "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-20230630.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-20230630.htm",
      "unique": true
     }
    },
    "R8": {
     "role": "http://espey.com/role/NatureofOperations",
     "longName": "007 - Disclosure - Nature of Operations",
     "shortName": "Nature of Operations",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "8",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:NatureOfOperations",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:NatureOfOperations",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R9": {
     "role": "http://espey.com/role/SummaryofSignificantAccountingPolicies",
     "longName": "008 - Disclosure - Summary of Significant Accounting Policies",
     "shortName": "Summary of Significant Accounting Policies",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "9",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R10": {
     "role": "http://espey.com/role/Revenue",
     "longName": "009 - Disclosure - Revenue",
     "shortName": "Revenue",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "10",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.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-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R11": {
     "role": "http://espey.com/role/InvestmentSecurities",
     "longName": "010 - Disclosure - Investment Securities",
     "shortName": "Investment Securities",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "11",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R12": {
     "role": "http://espey.com/role/ContractsinProcess",
     "longName": "011 - Disclosure - Contracts in Process",
     "shortName": "Contracts in Process",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "12",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:LongTermContractsOrProgramsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:LongTermContractsOrProgramsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R13": {
     "role": "http://espey.com/role/PropertyPlantandEquipment",
     "longName": "012 - Disclosure - Property, Plant and Equipment",
     "shortName": "Property, Plant and Equipment",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "13",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R14": {
     "role": "http://espey.com/role/PensionExpense",
     "longName": "013 - Disclosure - Pension Expense",
     "shortName": "Pension Expense",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "14",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "esp:PensionExpenseTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "esp:PensionExpenseTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R15": {
     "role": "http://espey.com/role/ProvisionforIncomeTaxes",
     "longName": "014 - Disclosure - Provision for Income Taxes",
     "shortName": "Provision for Income Taxes",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "15",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R16": {
     "role": "http://espey.com/role/SignificantCustomers",
     "longName": "015 - Disclosure - Significant Customers",
     "shortName": "Significant Customers",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "16",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "esp:SignificantCustomersTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "esp:SignificantCustomersTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R17": {
     "role": "http://espey.com/role/EmployeeStockOwnershipPlan",
     "longName": "016 - Disclosure - Employee Stock Ownership Plan",
     "shortName": "Employee Stock Ownership Plan",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "17",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "esp:EmployeeStockOwnershipPlanTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.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-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R18": {
     "role": "http://espey.com/role/StockBasedCompensation",
     "longName": "017 - Disclosure - Stock-Based Compensation",
     "shortName": "Stock-Based Compensation",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "18",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.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-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R19": {
     "role": "http://espey.com/role/ConcentrationofCreditRisk",
     "longName": "018 - Disclosure - Concentration of Credit Risk",
     "shortName": "Concentration of Credit Risk",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "19",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ConcentrationRiskDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ConcentrationRiskDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R20": {
     "role": "http://espey.com/role/RelatedParties",
     "longName": "019 - Disclosure - Related Parties",
     "shortName": "Related Parties",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "20",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R21": {
     "role": "http://espey.com/role/CommitmentsandContingencies",
     "longName": "020 - Disclosure - Commitments and Contingencies",
     "shortName": "Commitments and Contingencies",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "21",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.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-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R22": {
     "role": "http://espey.com/role/StockholdersEquity",
     "longName": "021 - Disclosure - Stockholders' Equity",
     "shortName": "Stockholders' Equity",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "22",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R23": {
     "role": "http://espey.com/role/LineofCredit",
     "longName": "022 - Disclosure - Line of Credit",
     "shortName": "Line of Credit",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "23",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R24": {
     "role": "http://espey.com/role/QuarterlyFinancialInformationUnaudited",
     "longName": "023 - Disclosure - Quarterly Financial Information (Unaudited)",
     "shortName": "Quarterly Financial Information (Unaudited)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "24",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:QuarterlyFinancialInformationTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:QuarterlyFinancialInformationTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R25": {
     "role": "http://espey.com/role/AccountingPoliciesByPolicy",
     "longName": "024 - Disclosure - Accounting Policies, by Policy (Policies)",
     "shortName": "Accounting Policies, by Policy (Policies)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "policies",
     "menuCat": "Policies",
     "order": "25",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:RevenueRecognitionPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:RevenueRecognitionPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R26": {
     "role": "http://espey.com/role/SummaryofSignificantAccountingPoliciesTables",
     "longName": "025 - Disclosure - Summary of Significant Accounting Policies (Tables)",
     "shortName": "Summary of Significant Accounting Policies (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "26",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "esp:ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "esp:ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R27": {
     "role": "http://espey.com/role/InvestmentSecuritiesTables",
     "longName": "026 - Disclosure - Investment Securities (Tables)",
     "shortName": "Investment Securities (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "27",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:DebtSecuritiesAvailableForSaleTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.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:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R28": {
     "role": "http://espey.com/role/ContractsinProcessTables",
     "longName": "027 - Disclosure - Contracts in Process (Tables)",
     "shortName": "Contracts in Process (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "28",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "esp:ScheduleOfContractsInProcessTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "us-gaap:LongTermContractsOrProgramsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "esp:ScheduleOfContractsInProcessTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "us-gaap:LongTermContractsOrProgramsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R29": {
     "role": "http://espey.com/role/PropertyPlantandEquipmentTables",
     "longName": "028 - Disclosure - Property, Plant and Equipment (Tables)",
     "shortName": "Property, Plant and Equipment (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "29",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R30": {
     "role": "http://espey.com/role/ProvisionforIncomeTaxesTables",
     "longName": "029 - Disclosure - Provision for Income Taxes (Tables)",
     "shortName": "Provision for Income Taxes (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "30",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R31": {
     "role": "http://espey.com/role/EmployeeStockOwnershipPlanTables",
     "longName": "030 - Disclosure - Employee Stock Ownership Plan (Tables)",
     "shortName": "Employee Stock Ownership Plan (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "31",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "esp:EmployeeStockOwnershipPlanTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "esp:EmployeeStockOwnershipPlanTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R32": {
     "role": "http://espey.com/role/StockBasedCompensationTables",
     "longName": "031 - Disclosure - Stock-Based Compensation (Tables)",
     "shortName": "Stock-Based Compensation (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "32",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R33": {
     "role": "http://espey.com/role/StockholdersEquityTables",
     "longName": "032 - Disclosure - Stockholders' Equity (Tables)",
     "shortName": "Stockholders' Equity (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "33",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "esp:ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "esp:ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R34": {
     "role": "http://espey.com/role/QuarterlyFinancialInformationUnauditedTables",
     "longName": "033 - Disclosure - Quarterly Financial Information (Unaudited) (Tables)",
     "shortName": "Quarterly Financial Information (Unaudited) (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "34",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R35": {
     "role": "http://espey.com/role/SummaryofSignificantAccountingPoliciesDetails",
     "longName": "034 - Disclosure - Summary of Significant Accounting Policies (Details)",
     "shortName": "Summary of Significant Accounting Policies (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "35",
     "firstAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R36": {
     "role": "http://espey.com/role/ScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable",
     "longName": "035 - Disclosure - Summary of Significant Accounting Policies (Details) - Schedule of the Estimated Useful Lives of Depreciable Assets",
     "shortName": "Summary of Significant Accounting Policies (Details) - Schedule of the Estimated Useful Lives of Depreciable Assets",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "36",
     "firstAnchor": {
      "contextRef": "c33",
      "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c33",
      "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R37": {
     "role": "http://espey.com/role/RevenueDetails",
     "longName": "036 - Disclosure - Revenue (Details)",
     "shortName": "Revenue (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "37",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:Revenues",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:ContractWithCustomerLiability",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "unique": true
     }
    },
    "R38": {
     "role": "http://espey.com/role/ScheduleofAvailableforSaleSecuritiesTable",
     "longName": "037 - Disclosure - Investment Securities (Details) - Schedule of Available-for-Sale Securities",
     "shortName": "Investment Securities (Details) - Schedule of Available-for-Sale Securities",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "38",
     "firstAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R39": {
     "role": "http://espey.com/role/ScheduleofContractualMaturitiesTable",
     "longName": "038 - Disclosure - Investment Securities (Details) - Schedule of Contractual Maturities",
     "shortName": "Investment Securities (Details) - Schedule of Contractual Maturities",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "39",
     "firstAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R40": {
     "role": "http://espey.com/role/ScheduleofContractsinProcessTable",
     "longName": "039 - Disclosure - Contracts in Process (Details) - Schedule of Contracts in Process",
     "shortName": "Contracts in Process (Details) - Schedule of Contracts in Process",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "40",
     "firstAnchor": {
      "contextRef": "c3",
      "name": "esp:UnrecognizedGrossContractValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:LongTermContractsOrProgramsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c3",
      "name": "esp:UnrecognizedGrossContractValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:LongTermContractsOrProgramsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R41": {
     "role": "http://espey.com/role/PropertyPlantandEquipmentDetails",
     "longName": "040 - Disclosure - Property, Plant and Equipment (Details)",
     "shortName": "Property, Plant and Equipment (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "41",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:Depreciation",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c51",
      "name": "us-gaap:EquipmentExpense",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "unique": true
     }
    },
    "R42": {
     "role": "http://espey.com/role/ScheduleofPropertyPlantandEquipmentTable",
     "longName": "041 - Disclosure - Property, Plant and Equipment (Details) - Schedule of Property, Plant and Equipment",
     "shortName": "Property, Plant and Equipment (Details) - Schedule of Property, Plant and Equipment",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "42",
     "firstAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R43": {
     "role": "http://espey.com/role/PensionExpenseDetails",
     "longName": "042 - Disclosure - Pension Expense (Details)",
     "shortName": "Pension Expense (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "43",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:PensionAndOtherPostretirementBenefitExpense",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "esp:PensionExpenseTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:PensionAndOtherPostretirementBenefitExpense",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "esp:PensionExpenseTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R44": {
     "role": "http://espey.com/role/ScheduleofComponentsoftheProvisionforIncomeTaxesTable",
     "longName": "043 - Disclosure - Provision for Income Taxes (Details) - Schedule of Components of the Provision for Income Taxes",
     "shortName": "Provision for Income Taxes (Details) - Schedule of Components of the Provision for Income Taxes",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "44",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R45": {
     "role": "http://espey.com/role/ScheduleofEffectiveIncomeTaxRatesTable",
     "longName": "044 - Disclosure - Provision for Income Taxes (Details) - Schedule of Effective Income Tax Rates",
     "shortName": "Provision for Income Taxes (Details) - Schedule of Effective Income Tax Rates",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "45",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "esp:USFederalStatutoryIncomeTaxRate",
      "unitRef": "pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "esp:USFederalStatutoryIncomeTaxRate",
      "unitRef": "pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R46": {
     "role": "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable",
     "longName": "045 - Disclosure - Provision for Income Taxes (Details) - Schedule of Deferred Tax Assets and Liabilities",
     "shortName": "Provision for Income Taxes (Details) - Schedule of Deferred Tax Assets and Liabilities",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "46",
     "firstAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R47": {
     "role": "http://espey.com/role/SignificantCustomersDetails",
     "longName": "046 - Disclosure - Significant Customers (Details)",
     "shortName": "Significant Customers (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "47",
     "firstAnchor": {
      "contextRef": "c61",
      "name": "esp:ConcentrationRiskPercentageOne",
      "unitRef": "pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "esp:SignificantCustomersTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c61",
      "name": "esp:ConcentrationRiskPercentageOne",
      "unitRef": "pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "esp:SignificantCustomersTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R48": {
     "role": "http://espey.com/role/EmployeeStockOwnershipPlanDetails",
     "longName": "047 - Disclosure - Employee Stock Ownership Plan (Details)",
     "shortName": "Employee Stock Ownership Plan (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "48",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:EmployeeStockOwnershipPlanESOPPlanDescription",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "esp:EmployeeStockOwnershipPlanTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:EmployeeStockOwnershipPlanESOPPlanDescription",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "esp:EmployeeStockOwnershipPlanTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R49": {
     "role": "http://espey.com/role/ScheduleofESOPSharesTable",
     "longName": "048 - Disclosure - Employee Stock Ownership Plan (Details) - Schedule of ESOP Shares",
     "shortName": "Employee Stock Ownership Plan (Details) - Schedule of ESOP Shares",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "49",
     "firstAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "esp:EmployeeStockOwnershipPlanTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "esp:EmployeeStockOwnershipPlanTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R50": {
     "role": "http://espey.com/role/StockBasedCompensationDetails",
     "longName": "049 - Disclosure - Stock-Based Compensation (Details)",
     "shortName": "Stock-Based Compensation (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "50",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R51": {
     "role": "http://espey.com/role/ScheduleofWeightedAverageAssumptionsforOptionAwardsTable",
     "longName": "050 - Disclosure - Stock-Based Compensation (Details) - Schedule of Weighted Average Assumptions for Option Awards",
     "shortName": "Stock-Based Compensation (Details) - Schedule of Weighted Average Assumptions for Option Awards",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "51",
     "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-20230630.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-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R52": {
     "role": "http://espey.com/role/ScheduleofStockOptionActivityTable",
     "longName": "051 - Disclosure - Stock-Based Compensation (Details) - Schedule of Stock Option Activity",
     "shortName": "Stock-Based Compensation (Details) - Schedule of Stock Option Activity",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "52",
     "firstAnchor": {
      "contextRef": "c4",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c4",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
      "unitRef": "usdPershares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "2",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "unique": true
     }
    },
    "R53": {
     "role": "http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable",
     "longName": "052 - Disclosure - Stock-Based Compensation (Details) - Schedule of Changes in Non-Vested Stock Options",
     "shortName": "Stock-Based Compensation (Details) - Schedule of Changes in Non-Vested Stock Options",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "53",
     "firstAnchor": {
      "contextRef": "c4",
      "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c4",
      "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R54": {
     "role": "http://espey.com/role/ConcentrationofCreditRiskDetails",
     "longName": "053 - Disclosure - Concentration of Credit Risk (Details)",
     "shortName": "Concentration of Credit Risk (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "54",
     "firstAnchor": {
      "contextRef": "c81",
      "name": "esp:ConcentrationRiskPercentageOne",
      "unitRef": "pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "us-gaap:ConcentrationRiskDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c81",
      "name": "esp:ConcentrationRiskPercentageOne",
      "unitRef": "pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "us-gaap:ConcentrationRiskDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R55": {
     "role": "http://espey.com/role/CommitmentsandContingenciesDetails",
     "longName": "054 - Disclosure - Commitments and Contingencies (Details)",
     "shortName": "Commitments and Contingencies (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "55",
     "firstAnchor": {
      "contextRef": "c83",
      "name": "us-gaap:LossContingencyAccrualAtCarryingValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c83",
      "name": "us-gaap:LossContingencyAccrualAtCarryingValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R56": {
     "role": "http://espey.com/role/StockholdersEquityDetails",
     "longName": "055 - Disclosure - Stockholders' Equity (Details)",
     "shortName": "Stockholders' Equity (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "56",
     "firstAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R57": {
     "role": "http://espey.com/role/ScheduleofReservedCommonSharesforFutureIssuanceTable",
     "longName": "056 - Disclosure - Stockholders' Equity (Details) - Schedule of Reserved Common Shares for Future Issuance",
     "shortName": "Stockholders' Equity (Details) - Schedule of Reserved Common Shares for Future Issuance",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "57",
     "firstAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:CommonStockCapitalSharesReservedForFutureIssuance",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "unique": true
     }
    },
    "R58": {
     "role": "http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable",
     "longName": "057 - Disclosure - Stockholders' Equity (Details) - Schedule of Reconciliation of the Numerators and Denominators of the Basic and Diluted Earnings Per Share Computations",
     "shortName": "Stockholders' Equity (Details) - Schedule of Reconciliation of the Numerators and Denominators of the Basic and Diluted Earnings Per Share Computations",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "58",
     "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-20230630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c0",
      "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "unique": true
     }
    },
    "R59": {
     "role": "http://espey.com/role/LineofCreditDetails",
     "longName": "058 - Disclosure - Line of Credit (Details)",
     "shortName": "Line of Credit (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "59",
     "firstAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c3",
      "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    },
    "R60": {
     "role": "http://espey.com/role/ScheduleofQuarterlyFinancialInformationTable",
     "longName": "059 - Disclosure - Quarterly Financial Information (Unaudited) (Details) - Schedule of Quarterly Financial Information",
     "shortName": "Quarterly Financial Information (Unaudited) (Details) - Schedule of Quarterly Financial Information",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "60",
     "firstAnchor": {
      "contextRef": "c86",
      "name": "us-gaap:Revenues",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c86",
      "name": "us-gaap:Revenues",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "esp-20230630.htm",
      "first": true,
      "unique": true
     }
    }
   },
   "tag": {
    "dei_EntityFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityFileNumber",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity File Number",
        "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": []
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r376"
     ]
    },
    "us-gaap_DeferredTaxAssetsGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredTaxAssetsGross",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable": {
       "parentTag": "esp_DeferredTaxAssetLiability",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total deferred tax assets",
        "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": [
      "r413"
     ]
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtDisclosureTextBlock",
     "presentation": [
      "http://espey.com/role/LineofCredit"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Line of Credit",
        "label": "Debt Disclosure [Text Block]",
        "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants."
       }
      }
     },
     "auth_ref": [
      "r104",
      "r184",
      "r322",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r334"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r377"
     ]
    },
    "dei_EntityAddressPostalZipCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressPostalZipCode",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Address, Postal Zip Code",
        "label": "Entity Address, Postal Zip Code",
        "documentation": "Code for the postal or zip code"
       }
      }
     },
     "auth_ref": []
    },
    "esp_FourthQuarterMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "FourthQuarterMember",
     "presentation": [
      "http://espey.com/role/ScheduleofQuarterlyFinancialInformationTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fourth Quarter [Member]",
        "label": "Fourth Quarter Member"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockCapitalSharesReservedForFutureIssuance",
     "calculation": {
      "http://espey.com/role/ScheduleofReservedCommonSharesforFutureIssuanceTable": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://espey.com/role/ScheduleofReservedCommonSharesforFutureIssuanceTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Number of common shares reserved",
        "label": "Common Stock, Capital Shares Reserved for Future Issuance",
        "documentation": "Aggregate number of common shares reserved for future issuance."
       }
      }
     },
     "auth_ref": [
      "r26"
     ]
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityTaxIdentificationNumber",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Tax Identification Number",
        "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": [
      "r689"
     ]
    },
    "esp_GeographicConcentrationRisk1Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "GeographicConcentrationRisk1Member",
     "presentation": [
      "http://espey.com/role/SignificantCustomersDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Foreign Customers [Member]",
        "documentation": "Reflects the percentage that a specified dollar value on the balance sheet or income statement in the period from one or more specified geographic areas is to a corresponding consolidated, segment, or product line amount. Risk is the materially adverse effects of economic decline or antagonistic political actions resulting in loss of assets, sales volume, labor supply, or source of materials and supplies in a US state or a specified country, continent, or region such as EMEA (Europe, Middle East, Africa).",
        "label": "Geographic Concentration Risk1 Member"
       }
      }
     },
     "auth_ref": []
    },
    "esp_IncentiveStockOptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20230630",
     "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_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
     "presentation": [
      "http://espey.com/role/ProvisionforIncomeTaxesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Deferred Tax Assets and Liabilities",
        "label": "Schedule of Deferred Tax Assets and Liabilities [Table Text Block]",
        "documentation": "Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets."
       }
      }
     },
     "auth_ref": [
      "r111"
     ]
    },
    "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
     "presentation": [
      "http://espey.com/role/ProvisionforIncomeTaxesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Components of the Provision for Income Taxes",
        "label": "Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]",
        "documentation": "Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years."
       }
      }
     },
     "auth_ref": [
      "r112"
     ]
    },
    "esp_IndividualEmployeeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20230630",
     "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": []
    },
    "us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredTaxLiabilitiesPropertyPlantAndEquipment",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable": {
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property, plant and equipment - principally due to differences in depreciation methods",
        "label": "Deferred Tax Liabilities, Property, Plant and Equipment",
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from property, plant, and equipment."
       }
      }
     },
     "auth_ref": [
      "r65",
      "r785"
     ]
    },
    "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
     "presentation": [
      "http://espey.com/role/ProvisionforIncomeTaxesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Effective Income Tax Rates",
        "label": "Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]",
        "documentation": "Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r110"
     ]
    },
    "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CurrentStateAndLocalTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ScheduleofComponentsoftheProvisionforIncomeTaxesTable": {
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ScheduleofComponentsoftheProvisionforIncomeTaxesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current tax expense - state",
        "label": "Current State and Local Tax Expense (Benefit)",
        "documentation": "Amount of current state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction."
       }
      }
     },
     "auth_ref": [
      "r702",
      "r721",
      "r786"
     ]
    },
    "dei_EntityIncorporationStateCountryCode": {
     "xbrltype": "edgarStateCountryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityIncorporationStateCountryCode",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Incorporation, State or Country Code",
        "label": "Entity Incorporation, State or Country Code",
        "documentation": "Two-character EDGAR code representing the state or country of incorporation."
       }
      }
     },
     "auth_ref": []
    },
    "dei_CurrentFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CurrentFiscalYearEndDate",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current Fiscal Year End Date",
        "label": "Current Fiscal Year End Date",
        "documentation": "End date of current fiscal year in the format --MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "dei_CityAreaCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CityAreaCode",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "City Area Code",
        "label": "City Area Code",
        "documentation": "Area code of city"
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentTransitionReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentTransitionReport",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Transition Report",
        "label": "Document Transition Report",
        "documentation": "Boolean flag that is true only for a form used as a transition report."
       }
      }
     },
     "auth_ref": [
      "r694"
     ]
    },
    "esp_LondonInterbankOfferedRatesLIBORMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "LondonInterbankOfferedRatesLIBORMember",
     "presentation": [
      "http://espey.com/role/LineofCreditDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "London Interbank Offered Rates (LIBOR) [Member]",
        "label": "London Interbank Offered Rates LIBORMember"
       }
      }
     },
     "auth_ref": []
    },
    "esp_MilestonesAchievedMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20230630",
     "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": []
    },
    "us-gaap_CostOfRevenue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r84",
      "r186",
      "r276",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r464",
      "r753"
     ]
    },
    "dei_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "LocalPhoneNumber",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Local Phone Number",
        "label": "Local Phone Number",
        "documentation": "Local phone number for entity."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AdditionalPaidInCapitalCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdditionalPaidInCapitalCommonStock",
     "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": "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": [
      "r76"
     ]
    },
    "us-gaap_IncomeTaxesReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxesReceivable",
     "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": {
        "terseLabel": "Income tax receivable",
        "label": "Income Taxes Receivable, Current",
        "documentation": "Carrying amount due within one year of the balance sheet date (or one operating cycle, if longer) from tax authorities as of the balance sheet date representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes."
       }
      }
     },
     "auth_ref": [
      "r69",
      "r710"
     ]
    },
    "esp_NonEmployeeDirectorsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20230630",
     "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": []
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedIncomeStatement": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0,
       "order": 2.0
      },
      "http://espey.com/role/ScheduleofComponentsoftheProvisionforIncomeTaxesTable": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement",
      "http://espey.com/role/ScheduleofComponentsoftheProvisionforIncomeTaxesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Provision for income taxes",
        "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": [
      "r126",
      "r139",
      "r201",
      "r202",
      "r222",
      "r407",
      "r422",
      "r564"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "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": "Accumulated other comprehensive loss",
        "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": [
      "r29",
      "r30",
      "r81",
      "r158",
      "r554",
      "r573",
      "r577"
     ]
    },
    "us-gaap_VariableRateDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "VariableRateDomain",
     "presentation": [
      "http://espey.com/role/LineofCreditDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Variable Rate [Domain]",
        "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ScheduleofContractualMaturitiesTable"
     ],
     "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": [
      "r253",
      "r547"
     ]
    },
    "esp_UnearnedESOPSharesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20230630",
     "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": []
    },
    "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ScheduleofContractualMaturitiesTable"
     ],
     "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": [
      "r254",
      "r548"
     ]
    },
    "us-gaap_VariableRateAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "VariableRateAxis",
     "presentation": [
      "http://espey.com/role/LineofCreditDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Variable Rate [Axis]",
        "documentation": "Information by type of variable rate."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PropertyPlantAndEquipmentUsefulLife": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentUsefulLife",
     "presentation": [
      "http://espey.com/role/ScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Estimated useful lives of depreciable assets",
        "label": "Property, Plant and Equipment, Useful Life",
        "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GeographicConcentrationRiskMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GeographicConcentrationRiskMember",
     "presentation": [
      "http://espey.com/role/SignificantCustomersDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Geographic Concentration Risk [Member]",
        "label": "Geographic Concentration Risk [Member]",
        "documentation": "Reflects the percentage that a specified dollar value on the balance sheet or income statement in the period from one or more specified geographic areas is to a corresponding consolidated, segment, or product line amount. Risk is the materially adverse effects of economic decline or antagonistic political actions resulting in loss of assets, sales volume, labor supply, or source of materials and supplies in a US state or a specified country, continent, or region such as EMEA (Europe, Middle East, Africa)."
       }
      }
     },
     "auth_ref": [
      "r42",
      "r656"
     ]
    },
    "esp_NonQualifiedStockOptionsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "NonQualifiedStockOptionsMember",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-qualified stock options [Member]",
        "documentation": "Non-qualified stock options [Member]",
        "label": "Non Qualified Stock Options Member"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityWellKnownSeasonedIssuer",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Well-known Seasoned Issuer",
        "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": [
      "r697"
     ]
    },
    "dei_EntityVoluntaryFilers": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityVoluntaryFilers",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Voluntary Filers",
        "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": []
    },
    "esp_RestrictedStockPlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20230630",
     "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_CompensationAndRetirementDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CompensationAndRetirementDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Expense [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_SecondQuarterMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "SecondQuarterMember",
     "presentation": [
      "http://espey.com/role/ScheduleofQuarterlyFinancialInformationTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Second Quarter [Member]",
        "label": "Second Quarter Member"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCurrentReportingStatus": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCurrentReportingStatus",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Current Reporting Status",
        "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_Security12bTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "Security12bTitle",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Title of 12(b) Security",
        "label": "Title of 12(b) Security",
        "documentation": "Title of a 12(b) registered security."
       }
      }
     },
     "auth_ref": [
      "r688"
     ]
    },
    "us-gaap_ContractWithCustomerLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ContractWithCustomerLiabilityCurrent",
     "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": "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": [
      "r349",
      "r350",
      "r359"
     ]
    },
    "dei_EntityShellCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityShellCompany",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Shell Company",
        "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": [
      "r689"
     ]
    },
    "us-gaap_ContractWithCustomerLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r349",
      "r350",
      "r359"
     ]
    },
    "srt_StatementScenarioAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "StatementScenarioAxis",
     "presentation": [
      "http://espey.com/role/RevenueDetails",
      "http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable",
      "http://espey.com/role/ScheduleofContractualMaturitiesTable",
      "http://espey.com/role/ScheduleofESOPSharesTable",
      "http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable",
      "http://espey.com/role/ScheduleofReservedCommonSharesforFutureIssuanceTable",
      "http://espey.com/role/ScheduleofStockOptionActivityTable",
      "http://espey.com/role/ScheduleofWeightedAverageAssumptionsforOptionAwardsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Axis]"
       }
      }
     },
     "auth_ref": [
      "r203",
      "r364",
      "r698",
      "r699",
      "r725"
     ]
    },
    "esp_ThirdQuarterMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ThirdQuarterMember",
     "presentation": [
      "http://espey.com/role/ScheduleofQuarterlyFinancialInformationTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Third Quarter [Member]",
        "label": "Third Quarter Member"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LongTermContractsOrProgramsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LongTermContractsOrProgramsDisclosureTextBlock",
     "presentation": [
      "http://espey.com/role/ContractsinProcess"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contracts in Process",
        "label": "Long-Term Contracts or Programs Disclosure [Text Block]",
        "documentation": "The entire disclosure for long-term contracts or programs."
       }
      }
     },
     "auth_ref": [
      "r17",
      "r124",
      "r125",
      "r156",
      "r157",
      "r161",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r528",
      "r529",
      "r531",
      "r532",
      "r534",
      "r535",
      "r536"
     ]
    },
    "us-gaap_LandMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LandMember",
     "presentation": [
      "http://espey.com/role/ScheduleofPropertyPlantandEquipmentTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Land [Member]",
        "label": "Land [Member]",
        "documentation": "Part of earth's surface not covered by water."
       }
      }
     },
     "auth_ref": [
      "r756"
     ]
    },
    "esp_TwoThousandSevenPlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20230630",
     "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": []
    },
    "srt_ScenarioUnspecifiedDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ScenarioUnspecifiedDomain",
     "presentation": [
      "http://espey.com/role/RevenueDetails",
      "http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable",
      "http://espey.com/role/ScheduleofContractualMaturitiesTable",
      "http://espey.com/role/ScheduleofESOPSharesTable",
      "http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable",
      "http://espey.com/role/ScheduleofReservedCommonSharesforFutureIssuanceTable",
      "http://espey.com/role/ScheduleofStockOptionActivityTable",
      "http://espey.com/role/ScheduleofWeightedAverageAssumptionsforOptionAwardsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Domain]"
       }
      }
     },
     "auth_ref": [
      "r203",
      "r364",
      "r698",
      "r725"
     ]
    },
    "us-gaap_AvailableForSaleSecuritiesDebtSecurities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AvailableForSaleSecuritiesDebtSecurities",
     "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/ScheduleofAvailableforSaleSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investment securities",
        "verboseLabel": "Fair Value",
        "label": "Debt Securities, Available-for-Sale",
        "documentation": "Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)."
       }
      }
     },
     "auth_ref": [
      "r247",
      "r293",
      "r543",
      "r728"
     ]
    },
    "dei_EntityFilerCategory": {
     "xbrltype": "filerCategoryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityFilerCategory",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Filer Category",
        "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": [
      "r689"
     ]
    },
    "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RelatedPartyTransactionsDisclosureTextBlock",
     "presentation": [
      "http://espey.com/role/RelatedParties"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Related Parties",
        "label": "Related Party Transactions Disclosure [Text Block]",
        "documentation": "The entire disclosure for related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates."
       }
      }
     },
     "auth_ref": [
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r586",
      "r587",
      "r588",
      "r624",
      "r625",
      "r626",
      "r645",
      "r647"
     ]
    },
    "us-gaap_ExcessStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ExcessStockSharesOutstanding",
     "presentation": [
      "http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable"
     ],
     "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": []
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/ScheduleofPropertyPlantandEquipmentTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Accumulated depreciation",
        "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment",
        "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services."
       }
      }
     },
     "auth_ref": [
      "r50",
      "r154",
      "r557"
     ]
    },
    "us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfQuarterlyFinancialInformationTableTextBlock",
     "presentation": [
      "http://espey.com/role/QuarterlyFinancialInformationUnauditedTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Quarterly Financial Information",
        "label": "Quarterly Financial Information [Table Text Block]",
        "documentation": "Tabular disclosure of quarterly financial data. Includes, but is not limited to, financial information for fiscal quarters, cumulative effect of a change in accounting principle and earnings per share data."
       }
      }
     },
     "auth_ref": [
      "r128"
     ]
    },
    "dei_TradingSymbol": {
     "xbrltype": "tradingSymbolItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "TradingSymbol",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Trading Symbol",
        "label": "Trading Symbol",
        "documentation": "Trading symbol of an instrument as listed on an exchange."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInAccruedSalaries": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": "Increase in accrued salaries and wages",
        "label": "Increase (Decrease) in Accrued Salaries",
        "documentation": "The increase (decrease) during the period in accrued salaries."
       }
      }
     },
     "auth_ref": [
      "r7"
     ]
    },
    "esp_TwoThousandSeventeenPlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20230630",
     "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": []
    },
    "dei_EntitySmallBusiness": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntitySmallBusiness",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Small Business",
        "label": "Entity Small Business",
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)."
       }
      }
     },
     "auth_ref": [
      "r689"
     ]
    },
    "us-gaap_DebtInstrumentInterestRateStatedPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentInterestRateStatedPercentage",
     "presentation": [
      "http://espey.com/role/EmployeeStockOwnershipPlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Interest rate on loan",
        "label": "Debt Instrument, Interest Rate, Stated Percentage",
        "documentation": "Contractual interest rate for funds borrowed, under the debt agreement."
       }
      }
     },
     "auth_ref": [
      "r24",
      "r323"
     ]
    },
    "us-gaap_StandbyLettersOfCreditMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StandbyLettersOfCreditMember",
     "presentation": [
      "http://espey.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Standby Letters of Credit [Member]",
        "label": "Standby Letters of Credit [Member]",
        "documentation": "An irrevocable undertaking (typically by a financial institution) to guarantee payment of a specified financial obligation."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r752",
      "r800",
      "r801"
     ]
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r103",
      "r305",
      "r306",
      "r657",
      "r749"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Type [Domain]",
        "documentation": "Award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394"
     ]
    },
    "us-gaap_MunicipalBondsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "MunicipalBondsMember",
     "presentation": [
      "http://espey.com/role/ScheduleofAvailableforSaleSecuritiesTable"
     ],
     "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": []
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOfStockholdersEquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOfCashFlowsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommonStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r678",
      "r679",
      "r680",
      "r682",
      "r683",
      "r684",
      "r685",
      "r722",
      "r723",
      "r788",
      "r802",
      "r803"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Number of Shares Subject to Option, Exercised",
        "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": [
      "r13",
      "r74",
      "r75",
      "r106",
      "r377"
     ]
    },
    "us-gaap_DividendsCash": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DividendsCash",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/StockholdersEquityDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash dividends (in Dollars)",
        "label": "Dividends, Cash",
        "documentation": "Amount of paid and unpaid cash dividends declared for classes of stock, for example, but not limited to, common and preferred."
       }
      }
     },
     "auth_ref": [
      "r6",
      "r106"
     ]
    },
    "us-gaap_IncomeLossAttributableToParent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeLossAttributableToParent",
     "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": {
        "totalLabel": "Income before provision for income taxes",
        "label": "Income (Loss) Attributable to Parent, before Tax",
        "documentation": "Amount, before tax, of income (loss) attributable to parent. Includes, but is not limited to, income (loss) from continuing operations, discontinued operations and equity method investments."
       }
      }
     },
     "auth_ref": [
      "r85",
      "r174"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable",
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Number of Shares Subject to Option, Forfeited or expired",
        "terseLabel": "Shares cancelled (in Shares)",
        "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": [
      "r763"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r763"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "presentation": [
      "http://espey.com/role/PropertyPlantandEquipmentTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Property, Plant and Equipment",
        "label": "Property, Plant and Equipment [Table Text Block]",
        "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation."
       }
      }
     },
     "auth_ref": [
      "r9"
     ]
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": []
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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_ConcentrationRiskByBenchmarkAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "presentation": [
      "http://espey.com/role/ConcentrationofCreditRiskDetails",
      "http://espey.com/role/SignificantCustomersDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk Benchmark [Axis]",
        "documentation": "Information by benchmark of concentration risk."
       }
      }
     },
     "auth_ref": [
      "r41",
      "r43",
      "r67",
      "r68",
      "r233",
      "r578",
      "r656"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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_IncomeStatementAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeStatementAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SalesTypeLeaseRevenue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SalesTypeLeaseRevenue",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/SignificantCustomersDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Sales (in Dollars)",
        "label": "Sales-type Lease, Revenue",
        "documentation": "Amount of sales-type lease revenue."
       }
      }
     },
     "auth_ref": [
      "r217",
      "r481"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "presentation": [
      "http://espey.com/role/PropertyPlantandEquipment"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property, Plant and Equipment",
        "label": "Property, Plant and Equipment Disclosure [Text Block]",
        "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections."
       }
      }
     },
     "auth_ref": [
      "r100",
      "r133",
      "r136",
      "r137"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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_ProceedsFromSaleOfOtherProductiveAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProceedsFromSaleOfOtherProductiveAssets",
     "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 sale of property, plant and equipment",
        "label": "Proceeds from Sale of Other Productive Assets",
        "documentation": "Amount of cash inflow from the sale of tangible or intangible assets used to produce goods or deliver services, classified as other."
       }
      }
     },
     "auth_ref": [
      "r89"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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_USTreasuryBillSecuritiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "USTreasuryBillSecuritiesMember",
     "presentation": [
      "http://espey.com/role/ScheduleofAvailableforSaleSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "US Treasury Bill Securities [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": [
      "r799"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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_ScheduleOfPropertyPlantAndEquipmentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfPropertyPlantAndEquipmentTable",
     "presentation": [
      "http://espey.com/role/ScheduleofPropertyPlantandEquipmentTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Table]",
        "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation."
       }
      }
     },
     "auth_ref": [
      "r9"
     ]
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r75",
      "r601"
     ]
    },
    "us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AvailableForSaleSecuritiesDebtSecuritiesCurrent",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ScheduleofContractualMaturitiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair Value",
        "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": [
      "r243",
      "r293"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "presentation": [
      "http://espey.com/role/PropertyPlantandEquipmentDetails",
      "http://espey.com/role/ScheduleofPropertyPlantandEquipmentTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Lived Tangible Asset [Domain]",
        "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software."
       }
      }
     },
     "auth_ref": [
      "r101"
     ]
    },
    "us-gaap_StockholdersEquityNoteAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockholdersEquityNoteAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' Equity Note [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue",
     "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, Vested and Expected to Vest, Exercisable, Aggregate Intrinsic Value",
        "documentation": "Amount by which current fair value of underlying stock exceeds exercise price of fully vested and expected to vest exercisable or convertible options. 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": [
      "r389"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other comprehensive income (loss), net of tax:",
        "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other comprehensive income, 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": [
      "r4",
      "r81",
      "r362"
     ]
    },
    "us-gaap_PlanNameAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r757",
      "r758",
      "r759",
      "r760",
      "r761",
      "r762",
      "r763",
      "r764",
      "r765",
      "r766",
      "r767",
      "r768",
      "r769",
      "r770",
      "r771",
      "r772",
      "r773",
      "r774",
      "r775",
      "r776",
      "r777",
      "r778",
      "r779",
      "r780",
      "r781",
      "r782"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r300",
      "r301",
      "r302",
      "r303",
      "r538",
      "r542"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice",
     "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, Vested and Expected to Vest, Exercisable, 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 exercisable or convertible options. 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": [
      "r389"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r388"
     ]
    },
    "us-gaap_Assets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events."
       }
      }
     },
     "auth_ref": [
      "r115",
      "r155",
      "r186",
      "r219",
      "r225",
      "r229",
      "r276",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r431",
      "r433",
      "r464",
      "r551",
      "r613",
      "r676",
      "r687",
      "r753",
      "r754",
      "r791"
     ]
    },
    "us-gaap_AccountingPoliciesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccountingPoliciesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Summary of Significant Accounting Policies [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentFinStmtErrorCorrectionFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentFinStmtErrorCorrectionFlag",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Financial Statement Error Correction [Flag]",
        "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": [
      "r691",
      "r692",
      "r693",
      "r695"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r388"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r388"
     ]
    },
    "us-gaap_PlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r757",
      "r758",
      "r759",
      "r760",
      "r761",
      "r762",
      "r763",
      "r764",
      "r765",
      "r766",
      "r767",
      "r768",
      "r769",
      "r770",
      "r771",
      "r772",
      "r773",
      "r774",
      "r775",
      "r776",
      "r777",
      "r778",
      "r779",
      "r780",
      "r781",
      "r782"
     ]
    },
    "dei_DocumentPeriodEndDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentPeriodEndDate",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Period End Date",
        "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": []
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r47",
      "r48"
     ]
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "presentation": [
      "http://espey.com/role/StockholdersEquityTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Reconciliation of the Numerators and Denominators of the Basic and Diluted Earnings Per Share Computations",
        "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": [
      "r726"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost",
     "presentation": [
      "http://espey.com/role/ScheduleofEffectiveIncomeTaxRatesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-based compensation",
        "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Share-Based Payment Arrangement, Percent",
        "documentation": "Percentage of difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to nondeductible expense for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r784",
      "r787"
     ]
    },
    "us-gaap_AwardTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AwardTypeAxis",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Type [Axis]",
        "documentation": "Information by type of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EffectiveIncomeTaxRateReconciliationOtherAdjustments",
     "presentation": [
      "http://espey.com/role/ScheduleofEffectiveIncomeTaxRatesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other",
        "label": "Effective Income Tax Rate Reconciliation, Other Adjustments, Percent",
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments."
       }
      }
     },
     "auth_ref": [
      "r784",
      "r787"
     ]
    },
    "us-gaap_PensionAndOtherPostretirementBenefitExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PensionAndOtherPostretirementBenefitExpense",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/PensionExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Defined benefit contributions and expenses",
        "label": "Pension and Other Postretirement Benefits Cost (Reversal of Cost)",
        "documentation": "Amount of cost (reversal of cost) for pension and other postretirement benefits."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes",
     "presentation": [
      "http://espey.com/role/ScheduleofEffectiveIncomeTaxRatesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "State franchise tax, net of federal income tax benefit",
        "label": "Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Percent",
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations applicable to state and local income tax expense (benefit), net of federal tax expense (benefit)."
       }
      }
     },
     "auth_ref": [
      "r784",
      "r787"
     ]
    },
    "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentBasisSpreadOnVariableRate1",
     "presentation": [
      "http://espey.com/role/LineofCreditDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Daily floating rate",
        "label": "Debt Instrument, Basis Spread on Variable Rate",
        "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r164",
      "r166",
      "r275"
     ]
    },
    "us-gaap_RelatedPartyTransactionsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RelatedPartyTransactionsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Parties [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3_Parentheticals"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other comprehensive income, 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": [
      "r5",
      "r165"
     ]
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r34",
      "r152",
      "r661"
     ]
    },
    "us-gaap_CashAndCashEquivalentsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashAndCashEquivalentsPolicyTextBlock",
     "presentation": [
      "http://espey.com/role/AccountingPoliciesByPolicy"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash and Cash Equivalents",
        "label": "Cash and Cash Equivalents, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value."
       }
      }
     },
     "auth_ref": [
      "r35"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average Remaining Contractual Term, Beginning",
        "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": [
      "r107"
     ]
    },
    "us-gaap_NonoperatingIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NonoperatingIncomeExpense",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedIncomeStatement": {
       "parentTag": "us-gaap_IncomeLossAttributableToParent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "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": [
      "r88"
     ]
    },
    "us-gaap_DividendsCommonStockCash": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DividendsCommonStockCash",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Dividends paid on common stock $0.20 per share",
        "label": "Dividends, Common Stock, Cash",
        "documentation": "Amount of paid and unpaid common stock dividends declared with the form of settlement in cash."
       }
      }
     },
     "auth_ref": [
      "r106"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1",
     "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, 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": [
      "r54"
     ]
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Registrant Name",
        "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": [
      "r689"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r388"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1",
     "presentation": [
      "http://espey.com/role/ScheduleofWeightedAverageAssumptionsforOptionAwardsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Expected option life (in years)",
        "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": [
      "r390"
     ]
    },
    "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DefinedContributionPlanEmployerMatchingContributionPercent",
     "presentation": [
      "http://espey.com/role/PensionExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Percentage of employer contribution",
        "label": "Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay",
        "documentation": "Percentage of employees' gross pay for which the employer contributes a matching contribution to a defined contribution plan."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r60"
     ]
    },
    "us-gaap_EarningsPerShareBasic": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareBasic",
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement",
      "http://espey.com/role/ScheduleofQuarterlyFinancialInformationTable"
     ],
     "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": [
      "r177",
      "r195",
      "r196",
      "r197",
      "r198",
      "r199",
      "r204",
      "r206",
      "r211",
      "r212",
      "r213",
      "r215",
      "r457",
      "r458",
      "r545",
      "r562",
      "r667"
     ]
    },
    "us-gaap_ContractorsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ContractorsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Contracts in Process [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInContractWithCustomerLiability",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 11.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Increase in 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": [
      "r530",
      "r718"
     ]
    },
    "srt_TitleOfIndividualAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "TitleOfIndividualAxis",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of Individual [Axis]"
       }
      }
     },
     "auth_ref": [
      "r727",
      "r790"
     ]
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Central Index Key",
        "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": [
      "r689"
     ]
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet_Parentheticals",
      "http://espey.com/role/SummaryofSignificantAccountingPoliciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Trade accounts receivable, allowance (in Dollars)",
        "verboseLabel": "Doubtful accounts",
        "label": "Accounts Receivable, Allowance for Credit Loss, Current",
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current."
       }
      }
     },
     "auth_ref": [
      "r159",
      "r238",
      "r287"
     ]
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxDisclosureTextBlock",
     "presentation": [
      "http://espey.com/role/ProvisionforIncomeTaxes"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Provision for Income Taxes",
        "label": "Income Tax Disclosure [Text Block]",
        "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information."
       }
      }
     },
     "auth_ref": [
      "r187",
      "r404",
      "r409",
      "r410",
      "r415",
      "r421",
      "r425",
      "r426",
      "r427",
      "r585"
     ]
    },
    "us-gaap_GrossProfit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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",
      "http://espey.com/role/ScheduleofQuarterlyFinancialInformationTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Gross profit",
        "terseLabel": "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": [
      "r83",
      "r186",
      "r219",
      "r224",
      "r228",
      "r230",
      "r276",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r464",
      "r669",
      "r753"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r400",
      "r401",
      "r402",
      "r589",
      "r722",
      "r723",
      "r724",
      "r788",
      "r803"
     ]
    },
    "us-gaap_ComprehensiveIncomeNetOfTaxAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ComprehensiveIncomeNetOfTaxAbstract",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Comprehensive income:",
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r395",
      "r403"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred tax benefit related to stock based compensation",
        "label": "Share-Based Payment Arrangement, Expense, Tax Benefit",
        "documentation": "Amount of tax benefit for recognition of expense of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r395"
     ]
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementEquityComponentsAxis",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Components [Axis]",
        "documentation": "Information by component of equity."
       }
      }
     },
     "auth_ref": [
      "r13",
      "r28",
      "r145",
      "r172",
      "r173",
      "r174",
      "r188",
      "r189",
      "r190",
      "r192",
      "r200",
      "r202",
      "r218",
      "r280",
      "r286",
      "r348",
      "r400",
      "r401",
      "r402",
      "r419",
      "r420",
      "r438",
      "r440",
      "r441",
      "r442",
      "r443",
      "r445",
      "r456",
      "r469",
      "r470",
      "r471",
      "r472",
      "r473",
      "r474",
      "r486",
      "r568",
      "r569",
      "r570",
      "r589",
      "r641"
     ]
    },
    "us-gaap_RetainedEarningsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r145",
      "r188",
      "r189",
      "r190",
      "r192",
      "r200",
      "r202",
      "r280",
      "r286",
      "r400",
      "r401",
      "r402",
      "r419",
      "r420",
      "r438",
      "r441",
      "r442",
      "r445",
      "r456",
      "r568",
      "r570",
      "r589",
      "r803"
     ]
    },
    "us-gaap_TradeAndOtherAccountsReceivablePolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TradeAndOtherAccountsReceivablePolicy",
     "presentation": [
      "http://espey.com/role/AccountingPoliciesByPolicy"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts Receivable and Allowance for Doubtful Accounts",
        "label": "Accounts Receivable [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for accounts receivable."
       }
      }
     },
     "auth_ref": [
      "r121",
      "r122",
      "r123",
      "r236",
      "r237",
      "r239"
     ]
    },
    "us-gaap_ShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r7"
     ]
    },
    "dei_DocumentInformationLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentInformationLineItems",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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_AvailableForSaleDebtSecuritiesAmortizedCostBasis": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AvailableForSaleDebtSecuritiesAmortizedCostBasis",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ScheduleofAvailableforSaleSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Amortized cost",
        "label": "Debt Securities, Available-for-Sale, Amortized Cost",
        "documentation": "Amortized cost of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)."
       }
      }
     },
     "auth_ref": [
      "r246",
      "r293",
      "r550"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentGross",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ScheduleofPropertyPlantandEquipmentTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property, plant and equipment, gross",
        "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": [
      "r101",
      "r153",
      "r558"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r181"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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",
      "http://espey.com/role/PropertyPlantandEquipmentDetails",
      "http://espey.com/role/ScheduleofPropertyPlantandEquipmentTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property, plant and equipment, net",
        "verboseLabel": "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": [
      "r9",
      "r549",
      "r558",
      "r676"
     ]
    },
    "us-gaap_EquityComponentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r13",
      "r145",
      "r172",
      "r173",
      "r174",
      "r188",
      "r189",
      "r190",
      "r192",
      "r200",
      "r202",
      "r218",
      "r280",
      "r286",
      "r348",
      "r400",
      "r401",
      "r402",
      "r419",
      "r420",
      "r438",
      "r440",
      "r441",
      "r442",
      "r443",
      "r445",
      "r456",
      "r469",
      "r470",
      "r471",
      "r472",
      "r473",
      "r474",
      "r486",
      "r568",
      "r569",
      "r570",
      "r589",
      "r641"
     ]
    },
    "us-gaap_InventoryForLongTermContractsOrPrograms": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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",
      "http://espey.com/role/ScheduleofContractsinProcessTable"
     ],
     "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": [
      "r711"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accumulated Other Comprehensive (Loss) Income",
        "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": [
      "r3",
      "r12",
      "r30",
      "r440",
      "r443",
      "r486",
      "r568",
      "r569",
      "r715",
      "r716",
      "r717",
      "r722",
      "r723",
      "r724"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPNumberOfAllocatedShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r63"
     ]
    },
    "us-gaap_CommitmentsAndContingencies": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommitmentsAndContingencies",
     "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": "Commitments and Contingencies (See Note 14)",
        "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": [
      "r25",
      "r70",
      "r552",
      "r600"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPCompensationExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r62"
     ]
    },
    "us-gaap_MultiemployerPlanPensionSignificantPlanContribution": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "MultiemployerPlanPensionSignificantPlanContribution",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/PensionExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Expenses contributions",
        "label": "Multiemployer Plan, Pension, Significant, Plan Contribution",
        "documentation": "Amount of contribution received by multiemployer pension plan from all employers participating in multiemployer pension plan determined to be individually significant."
       }
      }
     },
     "auth_ref": [
      "r365",
      "r673"
     ]
    },
    "us-gaap_OtherIncomeAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherIncomeAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other income",
        "label": "Component of Operating Income [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InvestmentPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InvestmentPolicyTextBlock",
     "presentation": [
      "http://espey.com/role/AccountingPoliciesByPolicy"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investment Securities",
        "label": "Investment, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for investment in financial asset."
       }
      }
     },
     "auth_ref": [
      "r563",
      "r579",
      "r580",
      "r581",
      "r582",
      "r649",
      "r650"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperations": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EffectiveIncomeTaxRateContinuingOperations",
     "presentation": [
      "http://espey.com/role/ScheduleofEffectiveIncomeTaxRatesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Effective tax rate",
        "label": "Effective Income Tax Rate Reconciliation, Percent",
        "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r408"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeStockOwnershipPlanESOPNumberOfSuspenseShares",
     "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": "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": [
      "r63"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPPlanDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeStockOwnershipPlanESOPPlanDescription",
     "presentation": [
      "http://espey.com/role/EmployeeStockOwnershipPlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Employee stock ownership plan (ESOP)",
        "label": "Employee Stock Ownership Plan (ESOP), Plan Description",
        "documentation": "Description of the plan, including the basis for determining contributions, the employee groups covered, and the nature and effect of significant matters affecting comparability of information for all periods presented. For leveraged ESOPs and pension reversion ESOPs, the description generally includes the basis for releasing shares and how dividends on allocated and unallocated shares are used."
       }
      }
     },
     "auth_ref": [
      "r61"
     ]
    },
    "esp_CashFlowsFromFinancingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "CashFlowsFromFinancingActivitiesAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash Flows from Financing Activities:",
        "label": "Cash Flows From Financing Activities Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPPlanDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeStockOwnershipPlanESOPPlanDomain",
     "presentation": [
      "http://espey.com/role/EmployeeStockOwnershipPlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee Stock Ownership Plan (ESOP), Plan [Domain]",
        "documentation": "Entities identify multiple employee stock ownership plans by unique name."
       }
      }
     },
     "auth_ref": [
      "r61"
     ]
    },
    "us-gaap_MachineryAndEquipmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "MachineryAndEquipmentMember",
     "presentation": [
      "http://espey.com/role/ScheduleofPropertyPlantandEquipmentTable",
      "http://espey.com/role/ScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Machinery and equipment [Member]",
        "label": "Machinery and Equipment [Member]",
        "documentation": "Tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryPolicyTextBlock",
     "presentation": [
      "http://espey.com/role/AccountingPoliciesByPolicy"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Inventory",
        "label": "Inventory, Policy [Policy Text Block]",
        "documentation": "Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost."
       }
      }
     },
     "auth_ref": [
      "r127",
      "r151",
      "r160",
      "r297",
      "r298",
      "r299",
      "r533",
      "r665"
     ]
    },
    "us-gaap_UseOfEstimates": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "UseOfEstimates",
     "presentation": [
      "http://espey.com/role/AccountingPoliciesByPolicy"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Use of Estimates",
        "label": "Use of Estimates, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles."
       }
      }
     },
     "auth_ref": [
      "r44",
      "r45",
      "r46",
      "r130",
      "r131",
      "r134",
      "r135"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPSharesInESOP": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r63"
     ]
    },
    "dei_EntityAddressAddressLine1": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressAddressLine1",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Address, Address Line One",
        "label": "Entity Address, Address Line One",
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events."
       }
      }
     },
     "auth_ref": [
      "r149",
      "r163",
      "r186",
      "r276",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r431",
      "r433",
      "r464",
      "r676",
      "r753",
      "r754",
      "r791"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EffectiveIncomeTaxRateReconciliationDeductionsEmployeeStockOwnershipPlanDividends",
     "presentation": [
      "http://espey.com/role/ScheduleofEffectiveIncomeTaxRatesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Dividend on allocated ESOP shares",
        "label": "Effective Income Tax Rate Reconciliation, Deduction, Employee Stock Ownership Plan Dividend, Percent",
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to deduction for dividend paid to employee stock ownership plan."
       }
      }
     },
     "auth_ref": [
      "r784",
      "r787"
     ]
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r14",
      "r15",
      "r55"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPDeferredSharesFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r64"
     ]
    },
    "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Weighted Average Assumptions for Option Awards",
        "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": [
      "r109"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresByPlanAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r60"
     ]
    },
    "us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r56"
     ]
    },
    "us-gaap_DebtSecuritiesAvailableForSaleTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtSecuritiesAvailableForSaleTableTextBlock",
     "presentation": [
      "http://espey.com/role/InvestmentSecuritiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Available-for-Sale 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": [
      "r730",
      "r731",
      "r732",
      "r733",
      "r734",
      "r735",
      "r736",
      "r737",
      "r738",
      "r739",
      "r740",
      "r741"
     ]
    },
    "us-gaap_EmployeeStockOwnershipPlanESOPDisclosuresLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeStockOwnershipPlanESOPDisclosuresLineItems",
     "presentation": [
      "http://espey.com/role/ScheduleofESOPSharesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of ESOP Shares [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": []
    },
    "us-gaap_TypeOfAdoptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TypeOfAdoptionMember",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Standards Update [Domain]",
        "documentation": "Amendment to accounting standards."
       }
      }
     },
     "auth_ref": [
      "r143",
      "r144",
      "r145",
      "r146",
      "r147",
      "r191",
      "r192",
      "r193",
      "r194",
      "r203",
      "r240",
      "r241",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r282",
      "r283",
      "r284",
      "r285",
      "r286",
      "r304",
      "r400",
      "r401",
      "r402",
      "r417",
      "r418",
      "r419",
      "r420",
      "r428",
      "r429",
      "r430",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445",
      "r448",
      "r449",
      "r450",
      "r451",
      "r452",
      "r453",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458",
      "r459",
      "r462",
      "r463",
      "r465",
      "r466",
      "r467",
      "r468",
      "r475",
      "r476",
      "r477",
      "r478",
      "r479",
      "r480",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r539",
      "r540",
      "r541",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r576",
      "r577"
     ]
    },
    "us-gaap_InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InvestmentsInDebtAndMarketableEquitySecuritiesAndCertainTradingAssetsDisclosureTextBlock",
     "presentation": [
      "http://espey.com/role/InvestmentSecurities"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investment Securities",
        "label": "Investments in Debt and Marketable Equity Securities (and Certain Trading Assets) Disclosure [Text Block]",
        "documentation": "The entire disclosure for investments in certain debt and equity securities."
       }
      }
     },
     "auth_ref": [
      "r114",
      "r119",
      "r120",
      "r142",
      "r242",
      "r244",
      "r460",
      "r461"
     ]
    },
    "us-gaap_ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfEmployeeStockOwnershipPlanESOPDisclosuresTable",
     "presentation": [
      "http://espey.com/role/ScheduleofESOPSharesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Employee Stock Ownership Plan (ESOP) Disclosures [Table]",
        "documentation": "Describes the details pertaining to each employee stock ownership plan."
       }
      }
     },
     "auth_ref": [
      "r60"
     ]
    },
    "us-gaap_PaymentsToAcquireInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsToAcquireInvestments",
     "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": "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": [
      "r90"
     ]
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r366",
      "r368",
      "r396",
      "r397",
      "r399",
      "r674"
     ]
    },
    "dei_EntityAddressCityOrTown": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressCityOrTown",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Address, City or Town",
        "label": "Entity Address, City or Town",
        "documentation": "Name of the City or Town"
       }
      }
     },
     "auth_ref": []
    },
    "esp_DeferredTaxAssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "DeferredTaxAssetsAbstract",
     "presentation": [
      "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred tax assets:",
        "label": "Deferred Tax Assets Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "esp_IncreaseReductionInRateResultingFromAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "IncreaseReductionInRateResultingFromAbstract",
     "presentation": [
      "http://espey.com/role/ScheduleofEffectiveIncomeTaxRatesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Increase (reduction) in rate resulting from:",
        "label": "Increase Reduction In Rate Resulting From Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressStateOrProvince": {
     "xbrltype": "stateOrProvinceItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressStateOrProvince",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Address, State or Province",
        "label": "Entity Address, State or Province",
        "documentation": "Name of the state or province."
       }
      }
     },
     "auth_ref": []
    },
    "esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationTable",
     "presentation": [
      "http://espey.com/role/ScheduleofQuarterlyFinancialInformationTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Quarterly Financial Information (Unaudited) (Details) - Schedule of Quarterly Financial Information [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "QuarterlyFinancialInformationUnauditedDetailsScheduleofQuarterlyFinancialInformationLineItems",
     "presentation": [
      "http://espey.com/role/ScheduleofQuarterlyFinancialInformationTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Quarterly Financial Information [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherNonoperatingIncome": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r178"
     ]
    },
    "esp_FirstQuarterMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "FirstQuarterMember",
     "presentation": [
      "http://espey.com/role/ScheduleofQuarterlyFinancialInformationTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "First Quarter [Member]",
        "label": "First Quarter Member"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_Liabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future."
       }
      }
     },
     "auth_ref": [
      "r21",
      "r186",
      "r276",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r432",
      "r433",
      "r434",
      "r464",
      "r599",
      "r668",
      "r687",
      "r753",
      "r791",
      "r792"
     ]
    },
    "esp_EmployeeStockOwnershipPlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20230630",
     "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_UnitsDeliveredMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20230630",
     "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": []
    },
    "esp_RevenueDetailsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "RevenueDetailsTable",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue (Details) [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsOther",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable": {
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "ESOP",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Other",
        "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences from compensation and benefits, classified as other."
       }
      }
     },
     "auth_ref": [
      "r65",
      "r785"
     ]
    },
    "us-gaap_InventoryNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryNet",
     "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": {
        "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": [
      "r162",
      "r662",
      "r676"
     ]
    },
    "us-gaap_QuarterlyFinancialInformationDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "QuarterlyFinancialInformationDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Quarterly Financial Information (Unaudited) [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r75"
     ]
    },
    "esp_NatureOfOperationsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "NatureOfOperationsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Nature of Operations [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable": {
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-based compensation",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Share-Based Compensation Cost",
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from share-based compensation."
       }
      }
     },
     "auth_ref": [
      "r65",
      "r785"
     ]
    },
    "esp_RevenueDetailsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "RevenueDetailsLineItems",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue (Details) [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_ScheduleOfTheEstimatedUsefulLivesOfDepreciableAssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ScheduleOfTheEstimatedUsefulLivesOfDepreciableAssetsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule Of The Estimated Useful Lives Of Depreciable Assets Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryRawMaterials": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r713"
     ]
    },
    "esp_BacklogPercentageOfRecognitions": {
     "xbrltype": "percentItemType",
     "nsuri": "http://espey.com/20230630",
     "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_SignificantCustomersAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "SignificantCustomersAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Significant Customers [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_BacklogPercentageOfRecognitionsYearOne": {
     "xbrltype": "percentItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "BacklogPercentageOfRecognitionsYearOne",
     "presentation": [
      "http://espey.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Backlog amount to be recognized, 2024",
        "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": []
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable": {
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accrued expenses",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Accrued Liabilities",
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from accrued liabilities."
       }
      }
     },
     "auth_ref": [
      "r65",
      "r785"
     ]
    },
    "esp_BacklogPercentageOfRecognitionsYearTwo": {
     "xbrltype": "percentItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "BacklogPercentageOfRecognitionsYearTwo",
     "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 two years of the operating cycle.",
        "label": "Backlog Percentage Of Recognitions Year Two"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_QuarterlyFinancialInformationTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "QuarterlyFinancialInformationTextBlock",
     "presentation": [
      "http://espey.com/role/QuarterlyFinancialInformationUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Quarterly Financial Information (Unaudited)",
        "label": "Quarterly Financial Information [Text Block]",
        "documentation": "The entire disclosure for quarterly financial data. Includes, but is not limited to, tabular presentation of financial information for fiscal quarters, effect of year-end adjustments, and an explanation of matters or transactions that affect comparability of the information."
       }
      }
     },
     "auth_ref": [
      "r96",
      "r216"
     ]
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "crdr": "credit",
     "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": {
        "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": [
      "r91"
     ]
    },
    "esp_BacklogPercentageOfRecognitionsYearThree": {
     "xbrltype": "percentItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "BacklogPercentageOfRecognitionsYearThree",
     "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 Three"
       }
      }
     },
     "auth_ref": []
    },
    "esp_DocumentAndEntityInformationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "DocumentAndEntityInformationAbstract",
     "auth_ref": []
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r80",
      "r117",
      "r556",
      "r676",
      "r720",
      "r745",
      "r789"
     ]
    },
    "esp_DefinedContributionPlanEmployersMatchingContribution": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "DefinedContributionPlanEmployersMatchingContribution",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/PensionExpenseDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Employee contribution",
        "documentation": "Amount of contributions which the employer contributes in a matching contribution to a defined contribution plan.",
        "label": "Defined Contribution Plan Employers Matching Contribution"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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_InvestmentsClassifiedByContractualMaturityDateTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InvestmentsClassifiedByContractualMaturityDateTableTextBlock",
     "presentation": [
      "http://espey.com/role/InvestmentSecuritiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Contractual Maturities",
        "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": []
    },
    "esp_PropertyPlantandEquipmentDetailsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "PropertyPlantandEquipmentDetailsTable",
     "presentation": [
      "http://espey.com/role/PropertyPlantandEquipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment (Details) [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_PropertyPlantandEquipmentDetailsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "PropertyPlantandEquipmentDetailsLineItems",
     "presentation": [
      "http://espey.com/role/PropertyPlantandEquipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment (Details) [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_RevenueRecognitionMilestoneMethodRevenuesRecognized": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "RevenueRecognitionMilestoneMethodRevenuesRecognized",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/PropertyPlantandEquipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revenue recognition, Milestone method, Revenues recognized",
        "documentation": "Revenue Recognition, Milestone Method, Revenue Recognized",
        "label": "Revenue Recognition Milestone Method Revenues Recognized"
       }
      }
     },
     "auth_ref": []
    },
    "srt_RangeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "RangeAxis",
     "presentation": [
      "http://espey.com/role/ScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable",
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]"
       }
      }
     },
     "auth_ref": [
      "r308",
      "r309",
      "r310",
      "r311",
      "r361",
      "r363",
      "r391",
      "r392",
      "r393",
      "r498",
      "r522",
      "r565",
      "r591",
      "r592",
      "r648",
      "r651",
      "r652",
      "r653",
      "r654",
      "r658",
      "r659",
      "r670",
      "r672",
      "r673",
      "r677",
      "r680",
      "r748",
      "r755",
      "r794",
      "r795",
      "r796",
      "r797",
      "r798"
     ]
    },
    "esp_SignificantCustomersDetailsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "SignificantCustomersDetailsTable",
     "presentation": [
      "http://espey.com/role/SignificantCustomersDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Significant Customers (Details) [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r86"
     ]
    },
    "us-gaap_FurnitureAndFixturesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FurnitureAndFixturesMember",
     "presentation": [
      "http://espey.com/role/ScheduleofPropertyPlantandEquipmentTable",
      "http://espey.com/role/ScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Furniture and fixtures [Member]",
        "label": "Furniture and Fixtures [Member]",
        "documentation": "Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases."
       }
      }
     },
     "auth_ref": []
    },
    "esp_SignificantCustomersDetailsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "SignificantCustomersDetailsLineItems",
     "presentation": [
      "http://espey.com/role/SignificantCustomersDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Significant Customers (Details) [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_ConcentrationRiskPercentageOne": {
     "xbrltype": "percentItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ConcentrationRiskPercentageOne",
     "presentation": [
      "http://espey.com/role/ConcentrationofCreditRiskDetails",
      "http://espey.com/role/SignificantCustomersDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Concentration risk percentage",
        "verboseLabel": "Trade accounts receivable balance",
        "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.",
        "label": "Concentration Risk Percentage One"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PaymentsOfDividendsCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsOfDividendsCommonStock",
     "crdr": "credit",
     "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": {
        "negatedLabel": "Dividends paid 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": [
      "r32"
     ]
    },
    "esp_StockBasedCompensationDetailsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "StockBasedCompensationDetailsLineItems",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock-Based Compensation (Details) [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities",
     "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/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": [
      "r179",
      "r180",
      "r729"
     ]
    },
    "us-gaap_AdjustmentsForNewAccountingPronouncementsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r143",
      "r144",
      "r145",
      "r146",
      "r147",
      "r191",
      "r192",
      "r193",
      "r194",
      "r203",
      "r240",
      "r241",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r282",
      "r283",
      "r284",
      "r285",
      "r286",
      "r304",
      "r400",
      "r401",
      "r402",
      "r417",
      "r418",
      "r419",
      "r420",
      "r428",
      "r429",
      "r430",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445",
      "r448",
      "r449",
      "r450",
      "r451",
      "r452",
      "r453",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458",
      "r459",
      "r462",
      "r463",
      "r465",
      "r466",
      "r467",
      "r468",
      "r475",
      "r476",
      "r477",
      "r478",
      "r479",
      "r480",
      "r482",
      "r483",
      "r484",
      "r485",
      "r486",
      "r539",
      "r540",
      "r541",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r576",
      "r577"
     ]
    },
    "srt_MaximumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "MaximumMember",
     "presentation": [
      "http://espey.com/role/ScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable",
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maximum [Member]",
        "label": "Maximum [Member]"
       }
      }
     },
     "auth_ref": [
      "r308",
      "r309",
      "r310",
      "r311",
      "r363",
      "r522",
      "r565",
      "r591",
      "r592",
      "r648",
      "r651",
      "r652",
      "r653",
      "r654",
      "r658",
      "r659",
      "r670",
      "r672",
      "r673",
      "r677",
      "r755",
      "r793",
      "r794",
      "r795",
      "r796",
      "r797",
      "r798"
     ]
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SignificantAccountingPoliciesTextBlock",
     "presentation": [
      "http://espey.com/role/SummaryofSignificantAccountingPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Significant Accounting Policies",
        "label": "Significant Accounting Policies [Text Block]",
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity."
       }
      }
     },
     "auth_ref": [
      "r95",
      "r183"
     ]
    },
    "esp_EmployeeStockOwnershipPlanDetailsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "EmployeeStockOwnershipPlanDetailsTable",
     "presentation": [
      "http://espey.com/role/EmployeeStockOwnershipPlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee Stock Ownership Plan (Details) [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_RangeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "RangeMember",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Domain]"
       }
      }
     },
     "auth_ref": [
      "r308",
      "r309",
      "r310",
      "r311",
      "r361",
      "r363",
      "r391",
      "r392",
      "r393",
      "r498",
      "r522",
      "r565",
      "r591",
      "r592",
      "r648",
      "r651",
      "r652",
      "r653",
      "r654",
      "r658",
      "r659",
      "r670",
      "r672",
      "r673",
      "r677",
      "r680",
      "r748",
      "r755",
      "r794",
      "r795",
      "r796",
      "r797",
      "r798"
     ]
    },
    "esp_EmployeeStockOwnershipPlanDetailsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "EmployeeStockOwnershipPlanDetailsLineItems",
     "presentation": [
      "http://espey.com/role/EmployeeStockOwnershipPlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee Stock Ownership Plan (Details) [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_StockBasedCompensationDetailsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "StockBasedCompensationDetailsTable",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock-Based Compensation (Details) [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberOfSharesContingentlyIssuable": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberOfSharesContingentlyIssuable",
     "presentation": [
      "http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted average ESOP shares earned during the period",
        "label": "Weighted Average Number of Shares, Contingently Issuable",
        "documentation": "Shares issuable for little or no cash consideration upon the satisfaction of certain conditions (contingently issuable shares) are considered outstanding common shares and included in the computation of basic Earnings Per Share as of the date that all necessary conditions have been satisfied (in essence, when issuance of the shares is no longer contingent). Outstanding common shares that are contingently returnable (that is, subject to recall) are treated in the same manner as contingently issuable shares. Contingently issuable shares include shares that (a) will be issued in the future upon the satisfaction of specified conditions, (b) have been placed in escrow and all or part must be returned if specified conditions are not met, or (c) have been issued but the holder must return all or part if specified conditions are not met. The number of contingently issuable shares is 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": [
      "r38"
     ]
    },
    "esp_DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "DeferredTaxBenefitRelatedToUnrecognizedCompensationCosts",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred tax benefit related to unrecognized compensation costs",
        "documentation": "Amount of deferred tax benefit attributable to unrecognized share-based compensation.",
        "label": "Deferred Tax Benefit Related To Unrecognized Compensation Costs"
       }
      }
     },
     "auth_ref": []
    },
    "srt_MinimumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "MinimumMember",
     "presentation": [
      "http://espey.com/role/ScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Minimum [Member]",
        "label": "Minimum [Member]"
       }
      }
     },
     "auth_ref": [
      "r308",
      "r309",
      "r310",
      "r311",
      "r363",
      "r522",
      "r565",
      "r591",
      "r592",
      "r648",
      "r651",
      "r652",
      "r653",
      "r654",
      "r658",
      "r659",
      "r670",
      "r672",
      "r673",
      "r677",
      "r755",
      "r793",
      "r794",
      "r795",
      "r796",
      "r797",
      "r798"
     ]
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement",
      "http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable"
     ],
     "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": [
      "r205",
      "r213"
     ]
    },
    "esp_NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "NumberOfSharesSubjectToOptionOrAwardSingleFiscalYear",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Vesting period (in Shares)",
        "documentation": "The number of shares subject to option or award in a single fiscal year as outlined in the plan contract.",
        "label": "Number Of Shares Subject To Option Or Award Single Fiscal Year"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment",
     "presentation": [
      "http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted average common shares issued 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": [
      "r726"
     ]
    },
    "esp_PercentageOfTotalNumberOfSharesSubjectToOptionsOrAwardsSingleFiscalYear": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "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": []
    },
    "esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionOutstandingNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://espey.com/20230630",
     "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_DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable": {
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Inventory - effect of uniform capitalization",
        "label": "Deferred Tax Liabilities, Inventory",
        "documentation": "Amount of deferred tax consequences attributable to taxable temporary differences derived from inventory."
       }
      }
     },
     "auth_ref": [
      "r65",
      "r785"
     ]
    },
    "us-gaap_InventoryWorkInProcess": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r712"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberOfSharesCommonStockSubjectToRepurchaseOrCancellation",
     "presentation": [
      "http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted average common shares purchased during the period",
        "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": [
      "r38"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r99",
      "r538"
     ]
    },
    "esp_ConcentrationofCreditRiskDetailsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ConcentrationofCreditRiskDetailsTable",
     "presentation": [
      "http://espey.com/role/ConcentrationofCreditRiskDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration of Credit Risk (Details) [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberOfSharesEmployeeStockOwnershipPlanSharesNotCommittedToBeReleased",
     "presentation": [
      "http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Unearned ESOP shares",
        "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": [
      "r59"
     ]
    },
    "us-gaap_OtherEmployeeRelatedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherEmployeeRelatedLiabilitiesCurrent",
     "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": "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": [
      "r22"
     ]
    },
    "esp_ConcentrationofCreditRiskDetailsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ConcentrationofCreditRiskDetailsLineItems",
     "presentation": [
      "http://espey.com/role/ConcentrationofCreditRiskDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration of Credit Risk (Details) [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_ScheduleOfAvailableForSaleSecuritiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ScheduleOfAvailableForSaleSecuritiesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule Of Available For Sale Securities Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement",
      "http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Basic (in Shares)",
        "verboseLabel": "Denominator for basic earnings per common shares \u2013 Weighted average common 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": [
      "r204",
      "r213"
     ]
    },
    "esp_ConcentrationRiskNumberOfCustomers": {
     "xbrltype": "integerItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ConcentrationRiskNumberOfCustomers",
     "presentation": [
      "http://espey.com/role/ConcentrationofCreditRiskDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Represented customers",
        "documentation": "The number of customers specifically identified in disclosure of concentration risk.",
        "label": "Concentration Risk Number Of Customers"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "presentation": [
      "http://espey.com/role/PropertyPlantandEquipmentDetails",
      "http://espey.com/role/ScheduleofPropertyPlantandEquipmentTable",
      "http://espey.com/role/ScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Lived Tangible Asset [Axis]",
        "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale."
       }
      }
     },
     "auth_ref": [
      "r9"
     ]
    },
    "esp_CommitmentsandContingenciesDetailsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "CommitmentsandContingenciesDetailsTable",
     "presentation": [
      "http://espey.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies (Details) [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_CommitmentsandContingenciesDetailsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "CommitmentsandContingenciesDetailsLineItems",
     "presentation": [
      "http://espey.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies (Details) [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TaxesPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TaxesPayableCurrent",
     "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": "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": [
      "r20"
     ]
    },
    "esp_LineofCreditDetailsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "LineofCreditDetailsTable",
     "presentation": [
      "http://espey.com/role/LineofCreditDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of Credit (Details) [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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/ScheduleofQuarterlyFinancialInformationTable",
      "http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable",
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net income",
        "terseLabel": "Net income",
        "verboseLabel": "Net income (loss) (in Dollars)",
        "label": "Net Income (Loss) Attributable to Parent",
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent."
       }
      }
     },
     "auth_ref": [
      "r82",
      "r94",
      "r118",
      "r148",
      "r167",
      "r169",
      "r174",
      "r186",
      "r191",
      "r195",
      "r196",
      "r197",
      "r198",
      "r201",
      "r202",
      "r210",
      "r219",
      "r224",
      "r228",
      "r230",
      "r276",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r458",
      "r464",
      "r559",
      "r621",
      "r639",
      "r640",
      "r669",
      "r686",
      "r753"
     ]
    },
    "us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ScheduleofAvailableforSaleSecuritiesTable"
     ],
     "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": [
      "r250"
     ]
    },
    "us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/ScheduleofAvailableforSaleSecuritiesTable"
     ],
     "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": [
      "r249"
     ]
    },
    "esp_LineofCreditDetailsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "LineofCreditDetailsLineItems",
     "presentation": [
      "http://espey.com/role/LineofCreditDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of Credit (Details) [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PropertyPlantAndEquipmentLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentLineItems",
     "presentation": [
      "http://espey.com/role/ScheduleofPropertyPlantandEquipmentTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [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_RevenueRecognitionPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenueRecognitionPolicyTextBlock",
     "presentation": [
      "http://espey.com/role/AccountingPoliciesByPolicy"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revenue",
        "label": "Revenue [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources."
       }
      }
     },
     "auth_ref": [
      "r622",
      "r660",
      "r666"
     ]
    },
    "us-gaap_NatureOfOperations": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NatureOfOperations",
     "presentation": [
      "http://espey.com/role/NatureofOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Nature of Operations",
        "label": "Nature of Operations [Text Block]",
        "documentation": "The entire disclosure for the nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward."
       }
      }
     },
     "auth_ref": [
      "r129",
      "r140"
     ]
    },
    "esp_ASC606Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://espey.com/20230630",
     "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": []
    },
    "esp_QuarterlyFinancialInformationAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "QuarterlyFinancialInformationAxis",
     "presentation": [
      "http://espey.com/role/ScheduleofQuarterlyFinancialInformationTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Quarterly Financial Information Axis",
        "label": "Quarterly Financial Information Axis"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockholdersEquityNoteDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockholdersEquityNoteDisclosureTextBlock",
     "presentation": [
      "http://espey.com/role/StockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stockholders' Equity",
        "label": "Equity [Text Block]",
        "documentation": "The entire disclosure for equity."
       }
      }
     },
     "auth_ref": [
      "r105",
      "r185",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r342",
      "r343",
      "r344",
      "r345",
      "r347",
      "r348",
      "r447",
      "r644",
      "r646",
      "r655"
     ]
    },
    "dei_SecurityExchangeName": {
     "xbrltype": "edgarExchangeCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "SecurityExchangeName",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Security Exchange Name",
        "label": "Security Exchange Name",
        "documentation": "Name of the Exchange on which a security is registered."
       }
      }
     },
     "auth_ref": [
      "r690"
     ]
    },
    "us-gaap_InvestmentIncomeInterestAndDividend": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InvestmentIncomeInterestAndDividend",
     "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 and Dividend",
        "documentation": "Amount before accretion (amortization) of purchase discount (premium) of interest income and dividend income on nonoperating securities."
       }
      }
     },
     "auth_ref": [
      "r87"
     ]
    },
    "dei_AuditorFirmId": {
     "xbrltype": "nonemptySequenceNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "AuditorFirmId",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Auditor Firm ID",
        "label": "Auditor Firm ID",
        "documentation": "PCAOB issued Audit Firm Identifier"
       }
      }
     },
     "auth_ref": [
      "r691",
      "r692",
      "r693"
     ]
    },
    "dei_EntityEmergingGrowthCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityEmergingGrowthCompany",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Emerging Growth Company",
        "label": "Entity Emerging Growth Company",
        "documentation": "Indicate if registrant meets the emerging growth company criteria."
       }
      }
     },
     "auth_ref": [
      "r689"
     ]
    },
    "us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfAvailableForSaleSecuritiesLineItems",
     "presentation": [
      "http://espey.com/role/ScheduleofAvailableforSaleSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Available-for-Sale Securities [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": [
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256"
     ]
    },
    "dei_EntityPublicFloat": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityPublicFloat",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Public Float",
        "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": []
    },
    "us-gaap_CertificatesOfDepositMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CertificatesOfDepositMember",
     "presentation": [
      "http://espey.com/role/ScheduleofAvailableforSaleSecuritiesTable"
     ],
     "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": [
      "r11",
      "r682",
      "r683",
      "r684",
      "r685"
     ]
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r31",
      "r168",
      "r170",
      "r176",
      "r544",
      "r561"
     ]
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCommonStockSharesOutstanding",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Common Stock, Shares Outstanding",
        "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": []
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "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": "Increase in trade accounts receivables",
        "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": [
      "r7"
     ]
    },
    "us-gaap_SupplementalCashFlowInformationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SupplementalCashFlowInformationAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Supplemental Schedule of Cash Flow Information:",
        "label": "Supplemental Cash Flow Information [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TreasuryStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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 427,241 shares of common stock in treasury as of June 30, 2023 and 2022",
        "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": [
      "r27",
      "r51",
      "r52"
     ]
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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, net of allowance 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": [
      "r234",
      "r235"
     ]
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConcentrationRiskByTypeAxis",
     "presentation": [
      "http://espey.com/role/ConcentrationofCreditRiskDetails",
      "http://espey.com/role/SignificantCustomersDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk Type [Axis]",
        "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender."
       }
      }
     },
     "auth_ref": [
      "r41",
      "r43",
      "r67",
      "r68",
      "r233",
      "r656",
      "r701"
     ]
    },
    "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock",
     "presentation": [
      "http://espey.com/role/AccountingPoliciesByPolicy"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Impairment of Long-Lived Assets",
        "label": "Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets."
       }
      }
     },
     "auth_ref": [
      "r0",
      "r102"
     ]
    },
    "us-gaap_TreasuryStockCommonMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r51"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesIssuedBasic": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberOfSharesIssuedBasic",
     "presentation": [
      "http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted average common shares issued 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": [
      "r37",
      "r38"
     ]
    },
    "us-gaap_TreasuryStockCommonShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r51"
     ]
    },
    "dei_DocumentInformationTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentInformationTable",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Container to support the formal attachment of each official or unofficial, public or private document as part of a submission package."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxesPaid": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxesPaid",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income taxes paid net of refunds",
        "label": "Income Taxes Paid",
        "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income."
       }
      }
     },
     "auth_ref": [
      "r33",
      "r36"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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_ConcentrationRiskDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConcentrationRiskDisclosureTextBlock",
     "presentation": [
      "http://espey.com/role/ConcentrationofCreditRisk"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Concentration of Credit Risk",
        "label": "Concentration Risk Disclosure [Text Block]",
        "documentation": "The entire disclosure for any concentrations existing at the date of the financial statements that make an entity vulnerable to a reasonably possible, near-term, severe impact. This disclosure informs financial statement users about the general nature of the risk associated with the concentration, and may indicate the percentage of concentration risk as of the balance sheet date."
       }
      }
     },
     "auth_ref": [
      "r97"
     ]
    },
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Amendment Flag",
        "label": "Amendment Flag",
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtSecuritiesAvailableForSaleTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtSecuritiesAvailableForSaleTable",
     "presentation": [
      "http://espey.com/role/ScheduleofAvailableforSaleSecuritiesTable"
     ],
     "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": [
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256"
     ]
    },
    "us-gaap_GainLossOnDispositionOfAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GainLossOnDispositionOfAssets",
     "crdr": "credit",
     "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": {
        "negatedLabel": "Gain on disposal of property, plant and equipment",
        "label": "Gain (Loss) on Disposition of Property Plant Equipment, Excluding Oil and Gas Property and Timber Property",
        "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, excluding oil and gas property and timber property."
       }
      }
     },
     "auth_ref": [
      "r719",
      "r746",
      "r747"
     ]
    },
    "dei_IcfrAuditorAttestationFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "IcfrAuditorAttestationFlag",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "ICFR Auditor Attestation Flag",
        "label": "ICFR Auditor Attestation Flag"
       }
      }
     },
     "auth_ref": [
      "r691",
      "r692",
      "r693"
     ]
    },
    "us-gaap_BuildingImprovementsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BuildingImprovementsMember",
     "presentation": [
      "http://espey.com/role/PropertyPlantandEquipmentDetails",
      "http://espey.com/role/ScheduleofPropertyPlantandEquipmentTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Building and improvements [Member]",
        "verboseLabel": "Building Improvements [Member]",
        "label": "Building Improvements [Member]",
        "documentation": "Addition, improvement, or renovation to a facility held for productive use including, but not limited to, office, production, storage and distribution facilities."
       }
      }
     },
     "auth_ref": [
      "r101"
     ]
    },
    "us-gaap_SalesRevenueNetMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SalesRevenueNetMember",
     "presentation": [
      "http://espey.com/role/ConcentrationofCreditRiskDetails",
      "http://espey.com/role/SignificantCustomersDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revenue Benchmark [Member]",
        "label": "Revenue Benchmark [Member]",
        "documentation": "Revenue from sale of product and rendering of service and other sources of income, when it serves as benchmark in concentration of risk calculation."
       }
      }
     },
     "auth_ref": [
      "r233",
      "r700"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockIssuedDuringPeriodValueEmployeeStockOwnershipPlan",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Reduction of unearned ESOP shares",
        "label": "Stock Issued During Period, Value, Employee Stock Ownership Plan",
        "documentation": "Aggregate value of stock issued during the period as a result of employee stock ownership plan (ESOP)."
       }
      }
     },
     "auth_ref": [
      "r13",
      "r57",
      "r74",
      "r75",
      "r106"
     ]
    },
    "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
     "presentation": [
      "http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable"
     ],
     "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": [
      "r207",
      "r208",
      "r209",
      "r213",
      "r367"
     ]
    },
    "dei_DocumentFiscalYearFocus": {
     "xbrltype": "gYearItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentFiscalYearFocus",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Fiscal Year Focus",
        "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": []
    },
    "us-gaap_DepreciationDepletionAndAmortizationPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DepreciationDepletionAndAmortizationPolicyTextBlock",
     "presentation": [
      "http://espey.com/role/AccountingPoliciesByPolicy"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Depreciation",
        "label": "Depreciation, Depletion, and Amortization [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for depreciation, depletion, and amortization of property and equipment costs, including methods used and estimated useful lives and how impairment of such assets is assessed and recognized."
       }
      }
     },
     "auth_ref": [
      "r664"
     ]
    },
    "us-gaap_DeferredTaxLiabilitiesPrepaidExpenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredTaxLiabilitiesPrepaidExpenses",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable": {
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Prepaid expenses",
        "label": "Deferred Tax Liabilities, Prepaid Expenses",
        "documentation": "Amount of deferred tax consequences attributable to taxable temporary differences derived from prepaid expenses."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentFiscalPeriodFocus": {
     "xbrltype": "fiscalPeriodItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentFiscalPeriodFocus",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Fiscal Period Focus",
        "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": []
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOfFinancialPositionAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockIssuedDuringPeriodSharesEmployeeBenefitPlan": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockIssuedDuringPeriodSharesEmployeeBenefitPlan",
     "presentation": [
      "http://espey.com/role/EmployeeStockOwnershipPlanDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Shares distributed",
        "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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r674"
     ]
    },
    "us-gaap_LossContingenciesByNatureOfContingencyAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LossContingenciesByNatureOfContingencyAxis",
     "presentation": [
      "http://espey.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Loss Contingency Nature [Axis]",
        "documentation": "Information by type of existing condition, situation, or set of circumstances involving uncertainty as to possible loss to an enterprise that will ultimately be resolved when one or more future events occur or fail to occur."
       }
      }
     },
     "auth_ref": [
      "r307",
      "r308",
      "r309",
      "r312",
      "r750",
      "r751"
     ]
    },
    "us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InvestmentsDebtAndEquitySecuritiesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment Securities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r398"
     ]
    },
    "us-gaap_EarningsPerShareDiluted": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareDiluted",
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement",
      "http://espey.com/role/ScheduleofQuarterlyFinancialInformationTable"
     ],
     "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": [
      "r177",
      "r195",
      "r196",
      "r197",
      "r198",
      "r199",
      "r206",
      "r211",
      "r212",
      "r213",
      "r215",
      "r457",
      "r458",
      "r545",
      "r562",
      "r667"
     ]
    },
    "esp_IncreaseDecreaseInVacationAccrual": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20230630",
     "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": []
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": []
    },
    "esp_IncreasedecreaseInPayrollAndOtherTaxesWithheld": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "IncreasedecreaseInPayrollAndOtherTaxesWithheld",
     "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 (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_NewAccountingPronouncementsPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "presentation": [
      "http://espey.com/role/AccountingPoliciesByPolicy"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Recent Accounting Pronouncements Not Yet Adopted",
        "label": "New Accounting Pronouncements, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BuildingAndBuildingImprovementsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BuildingAndBuildingImprovementsMember",
     "presentation": [
      "http://espey.com/role/ScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Buildings and improvements [Member]",
        "label": "Building and Building Improvements [Member]",
        "documentation": "Facility held for productive use including, but not limited to, office, production, storage and distribution facilities and any addition, improvement, or renovation to the structure, for example, but not limited to, interior masonry, interior flooring, electrical, and plumbing."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate",
     "presentation": [
      "http://espey.com/role/ScheduleofWeightedAverageAssumptionsforOptionAwardsTable"
     ],
     "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": [
      "r392"
     ]
    },
    "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets",
     "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": "Increase in prepaid expenses and other current assets",
        "label": "Increase (Decrease) in Prepaid Expense and Other Assets",
        "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r7"
     ]
    },
    "esp_AccruedExpensesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "AccruedExpensesAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accrued expenses:",
        "label": "Accrued Expenses Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsLineItems",
     "presentation": [
      "http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' Equity (Details) - Schedule of Reconciliation of the Numerators and Denominators of the Basic and Diluted Earnings Per Share Computations [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_PensionExpenseTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "PensionExpenseTextBlock",
     "presentation": [
      "http://espey.com/role/PensionExpense"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Pension Expense",
        "documentation": "The entire disclosure for pension expense.",
        "label": "Pension Expense Text Block"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://espey.com/role/ScheduleofWeightedAverageAssumptionsforOptionAwardsTable"
     ],
     "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": [
      "r383"
     ]
    },
    "esp_SignificantCustomersTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "SignificantCustomersTextBlock",
     "presentation": [
      "http://espey.com/role/SignificantCustomers"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Significant Customers",
        "documentation": "The disclosure for revenues in the period from one or more significant customers.",
        "label": "Significant Customers Text Block"
       }
      }
     },
     "auth_ref": []
    },
    "esp_ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ScheduleOfEstimatedUsefulLivesOfDepreciableAssetsTableTextBlock",
     "presentation": [
      "http://espey.com/role/SummaryofSignificantAccountingPoliciesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of the Estimated Useful Lives of Depreciable Assets",
        "documentation": "Tabular disclosure of estimated useful lives of depreciable assets.",
        "label": "Schedule Of Estimated Useful Lives Of Depreciable Assets Table Text Block"
       }
      }
     },
     "auth_ref": []
    },
    "esp_EmployeeStockOwnershipPlanTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://espey.com/20230630",
     "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": []
    },
    "esp_ContractLiabilitiesPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ContractLiabilitiesPolicyTextBlock",
     "presentation": [
      "http://espey.com/role/AccountingPoliciesByPolicy"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contract Liabilities",
        "documentation": "Disclosure of accounting policy for contract liabilities.",
        "label": "Contract Liabilities Policy Text Block"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockGrantedDuringPeriodValueSharebasedCompensationGross",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-based compensation",
        "label": "Shares Granted, Value, Share-Based Payment Arrangement, before Forfeiture",
        "documentation": "Value, before forfeiture, of shares granted under share-based payment arrangement. Excludes employee stock ownership plan (ESOP)."
       }
      }
     },
     "auth_ref": []
    },
    "esp_RecentlyIssuedAccountingStandardsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "RecentlyIssuedAccountingStandardsPolicyTextBlock",
     "presentation": [
      "http://espey.com/role/AccountingPoliciesByPolicy"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Recently Issued Accounting Standards",
        "documentation": "Disclosure of accounting policy pertaining to new accounting standards that may impact the entity's financial reporting.",
        "label": "Recently Issued Accounting Standards Policy Text Block"
       }
      }
     },
     "auth_ref": []
    },
    "esp_ScheduleOfPropertyPlantAndEquipmentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ScheduleOfPropertyPlantAndEquipmentAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule Of Property Plant And Equipment Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "esp_ScheduleOfContractsInProcessTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ScheduleOfContractsInProcessTableTextBlock",
     "presentation": [
      "http://espey.com/role/ContractsinProcessTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Contracts in Process",
        "documentation": "Schedule of contracts in process.",
        "label": "Schedule Of Contracts In Process Table Text Block"
       }
      }
     },
     "auth_ref": []
    },
    "esp_ScheduleOfContractualMaturitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ScheduleOfContractualMaturitiesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule Of Contractual Maturities Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommonStockSharesHeldInEmployeeTrustShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r58"
     ]
    },
    "esp_EmployeeStockOwnershipPlanTablesTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "EmployeeStockOwnershipPlanTablesTable",
     "presentation": [
      "http://espey.com/role/EmployeeStockOwnershipPlanTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee Stock Ownership Plan (Tables) [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_EmployeeStockOwnershipPlanTablesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "EmployeeStockOwnershipPlanTablesLineItems",
     "presentation": [
      "http://espey.com/role/EmployeeStockOwnershipPlanTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Employee Stock Ownership Plan [Abstract]",
        "label": "Employee Stock Ownership Plan Tables Line Items"
       }
      }
     },
     "auth_ref": []
    },
    "esp_StockBasedCompensationTablesTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "StockBasedCompensationTablesTable",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock-Based Compensation (Tables) [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RisksAndUncertaintiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RisksAndUncertaintiesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration of Credit Risk [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_StockBasedCompensationTablesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "StockBasedCompensationTablesLineItems",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Based Compensation [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_ScheduleOfContractsInProcessAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ScheduleOfContractsInProcessAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule Of Contracts In Process Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentAnnualReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentAnnualReport",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Annual Report",
        "label": "Document Annual Report",
        "documentation": "Boolean flag that is true only for a form used as an annual report."
       }
      }
     },
     "auth_ref": [
      "r691",
      "r692",
      "r693"
     ]
    },
    "esp_ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ScheduleOfReservedCommonSharesForFutureIssuanceTableTextBlock",
     "presentation": [
      "http://espey.com/role/StockholdersEquityTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Reserved Common Shares for Future Issuance",
        "documentation": "The schedule of common shares reserved for future issuance as stock option awards.",
        "label": "Schedule Of Reserved Common Shares For Future Issuance Table Text Block"
       }
      }
     },
     "auth_ref": []
    },
    "esp_ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ScheduleOfComponentsOfTheProvisionForIncomeTaxesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Components of the Provision for Income Taxes [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_ScheduleOfEffectiveIncomeTaxRatesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ScheduleOfEffectiveIncomeTaxRatesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Effective Income Tax Rates [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable",
     "presentation": [
      "http://espey.com/role/ScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Summary of Significant Accounting Policies (Details) - Schedule of the Estimated Useful Lives of Depreciable Assets [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_ScheduleOfDeferredTaxAssetsAndLiabilitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Deferred Tax Assets and Liabilities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "SummaryofSignificantAccountingPoliciesDetailsScheduleoftheEstimatedUsefulLivesofDepreciableAssetsLineItems",
     "presentation": [
      "http://espey.com/role/ScheduleoftheEstimatedUsefulLivesofDepreciableAssetsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Summary of Significant Accounting Policies (Details) - Schedule of the Estimated Useful Lives of Depreciable Assets [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r376"
     ]
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/LineofCreditDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maximum amount of line of credit",
        "label": "Line of Credit Facility, Maximum Borrowing Capacity",
        "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility."
       }
      }
     },
     "auth_ref": [
      "r19"
     ]
    },
    "us-gaap_ConcentrationRiskCreditRisk": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConcentrationRiskCreditRisk",
     "presentation": [
      "http://espey.com/role/AccountingPoliciesByPolicy"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Concentrations of Risk",
        "label": "Concentration Risk, Credit Risk, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for credit risk."
       }
      }
     },
     "auth_ref": [
      "r71",
      "r132"
     ]
    },
    "esp_EmployeeStockOwnershipPlanAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "EmployeeStockOwnershipPlanAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee Stock Ownership Plan [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "InvestmentSecuritiesDetailsScheduleofContractualMaturitiesTable",
     "presentation": [
      "http://espey.com/role/ScheduleofContractualMaturitiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment Securities (Details) - Schedule of Contractual Maturities [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "InvestmentSecuritiesDetailsScheduleofContractualMaturitiesLineItems",
     "presentation": [
      "http://espey.com/role/ScheduleofContractualMaturitiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Contractual Maturities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_ScheduleOfEsopSharesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ScheduleOfEsopSharesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule Of Esop Shares Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "esp_UnrecognizedGrossContractValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "UnrecognizedGrossContractValue",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ScheduleofContractsinProcessTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unrecognized gross contract value",
        "documentation": "Unrecognized gross contract value.",
        "label": "Unrecognized Gross Contract Value"
       }
      }
     },
     "auth_ref": []
    },
    "esp_ScheduleOfReservedCommonSharesForFutureIssuanceAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ScheduleOfReservedCommonSharesForFutureIssuanceAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule Of Reserved Common Shares For Future Issuance Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r675"
     ]
    },
    "esp_ScheduleOfWeightedAverageAssumptionsForOptionAwardsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ScheduleOfWeightedAverageAssumptionsForOptionAwardsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule Of Weighted Average Assumptions For Option Awards Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
     "calculation": {
      "http://espey.com/role/ScheduleofReservedCommonSharesforFutureIssuanceTable": {
       "parentTag": "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ScheduleofReservedCommonSharesforFutureIssuanceTable",
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock options available for issuance",
        "verboseLabel": "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": [
      "r54"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": "(Decrease) increase in cash and short term investments",
        "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": [
      "r2",
      "r92"
     ]
    },
    "esp_DeferredIncomeTaxesExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "DeferredIncomeTaxesExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ScheduleofComponentsoftheProvisionforIncomeTaxesTable": {
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://espey.com/role/ScheduleofComponentsoftheProvisionforIncomeTaxesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred tax (benefit) expense",
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred Income Taxes Expense Benefit"
       }
      }
     },
     "auth_ref": []
    },
    "esp_ScheduleOfStockOptionActivityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ScheduleOfStockOptionActivityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule Of Stock Option Activity Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r387"
     ]
    },
    "esp_USFederalStatutoryIncomeTaxRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "USFederalStatutoryIncomeTaxRate",
     "presentation": [
      "http://espey.com/role/ScheduleofEffectiveIncomeTaxRatesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "U.S. federal statutory income tax rate",
        "documentation": "U.S. federal statutory income tax rate.",
        "label": "USFederal Statutory Income Tax Rate"
       }
      }
     },
     "auth_ref": []
    },
    "esp_ScheduleOfChangesInNonVestedStockOptionsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ScheduleOfChangesInNonVestedStockOptionsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule Of Changes In Non Vested Stock Options Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unrecognized compensation costs",
        "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": [
      "r783"
     ]
    },
    "esp_ScheduleOfReconciliationOfTheNumeratorsAndDenominatorsOfTheBasicAndDilutedEarningsPerShareComputationsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ScheduleOfReconciliationOfTheNumeratorsAndDenominatorsOfTheBasicAndDilutedEarningsPerShareComputationsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule Of Reconciliation Of The Numerators And Denominators Of The Basic And Diluted Earnings Per Share Computations Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": []
    },
    "esp_ScheduleOfQuarterlyFinancialInformationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ScheduleOfQuarterlyFinancialInformationAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule Of Quarterly Financial Information Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInAccountsPayable",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ConsolidatedCashFlow": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Decrease in accounts payable",
        "label": "Increase (Decrease) in Accounts Payable",
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business."
       }
      }
     },
     "auth_ref": [
      "r7"
     ]
    },
    "esp_EffectiveIncomeTaxRateReconciliationESOPFairValue": {
     "xbrltype": "percentItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "EffectiveIncomeTaxRateReconciliationESOPFairValue",
     "presentation": [
      "http://espey.com/role/ScheduleofEffectiveIncomeTaxRatesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "ESOP cost versus Fair Market Value",
        "documentation": "The portion of the difference between the effective income tax rate and domestic federal statutory income tax rate attributable to differences in ESOP fair value.",
        "label": "Effective Income Tax Rate Reconciliation ESOPFair Value"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommonStockDividendsPerShareDeclared": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockDividendsPerShareDeclared",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common stock 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": [
      "r106"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r386"
     ]
    },
    "esp_EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback": {
     "xbrltype": "percentItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "EffectiveIncomeTaxRateReconciliationRateDifferentialOnNetOperatingLossCarryback",
     "presentation": [
      "http://espey.com/role/ScheduleofEffectiveIncomeTaxRatesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Rate Differential on Net Operating Loss Carryback",
        "documentation": "Rate differential on net oPercentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to rate Differential on net operating loss carryback.perating loss carryback.",
        "label": "Effective Income Tax Rate Reconciliation Rate Differential On Net Operating Loss Carryback"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetsAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "ASSETS",
        "label": "Assets [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_DeferredTaxAssetLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "DeferredTaxAssetLiability",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net deferred tax liability",
        "documentation": "Net deferred tax asset (liability).",
        "label": "Deferred Tax Asset Liability"
       }
      }
     },
     "auth_ref": []
    },
    "esp_StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "StockholdersEquityDetailsScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable",
     "presentation": [
      "http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Reconciliation of the Numerators and Denominators of the Basic and Diluted Earnings Per Share Computations [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentType",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Type",
        "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": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "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": [
      "r54"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "calculation": {
      "http://espey.com/role/ScheduleofReservedCommonSharesforFutureIssuanceTable": {
       "parentTag": "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ScheduleofReservedCommonSharesforFutureIssuanceTable",
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Number of Shares Subject to Option, Beginning",
        "periodEndLabel": "Number of Shares Subject to Option, Ending",
        "terseLabel": "Stock options outstanding",
        "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": [
      "r372",
      "r373"
     ]
    },
    "esp_InventoriesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "InventoriesAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Inventories:",
        "label": "Inventories Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "esp_StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "StockBasedCompensationDetailsScheduleofStockOptionActivityLineItems",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Stock Option Activity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Weighted Average Exercise Price, Beginning",
        "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": [
      "r372",
      "r373"
     ]
    },
    "us-gaap_FinancialInstrumentAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FinancialInstrumentAxis",
     "presentation": [
      "http://espey.com/role/ScheduleofAvailableforSaleSecuritiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Financial Instrument [Axis]",
        "documentation": "Information by type of financial instrument."
       }
      }
     },
     "auth_ref": [
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r260",
      "r261",
      "r262",
      "r263",
      "r264",
      "r265",
      "r266",
      "r267",
      "r268",
      "r269",
      "r270",
      "r271",
      "r272",
      "r273",
      "r274",
      "r288",
      "r289",
      "r290",
      "r291",
      "r292",
      "r294",
      "r295",
      "r296",
      "r333",
      "r346",
      "r446",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r506",
      "r507",
      "r508",
      "r509",
      "r510",
      "r511",
      "r512",
      "r513",
      "r514",
      "r515",
      "r516",
      "r517",
      "r518",
      "r519",
      "r520",
      "r521",
      "r560",
      "r671",
      "r703",
      "r704",
      "r705",
      "r706",
      "r707",
      "r708",
      "r709",
      "r741",
      "r742",
      "r743",
      "r744"
     ]
    },
    "esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsTable",
     "presentation": [
      "http://espey.com/role/ScheduleofWeightedAverageAssumptionsforOptionAwardsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock-Based Compensation (Details) - Schedule of Weighted Average Assumptions for Option Awards [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_TitleOfIndividualWithRelationshipToEntityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "TitleOfIndividualWithRelationshipToEntityDomain",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of Individual [Domain]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r374"
     ]
    },
    "esp_StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "StockBasedCompensationDetailsScheduleofWeightedAverageAssumptionsforOptionAwardsLineItems",
     "presentation": [
      "http://espey.com/role/ScheduleofWeightedAverageAssumptionsforOptionAwardsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Fair Value Assumptions [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_StockBasedCompensationDetailsScheduleofStockOptionActivityTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "StockBasedCompensationDetailsScheduleofStockOptionActivityTable",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock-Based Compensation (Details) - Schedule of Stock Option Activity [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ComprehensiveIncomePolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ComprehensiveIncomePolicyPolicyTextBlock",
     "presentation": [
      "http://espey.com/role/AccountingPoliciesByPolicy"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Comprehensive Income",
        "label": "Comprehensive Income, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for comprehensive income."
       }
      }
     },
     "auth_ref": []
    },
    "esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm": {
     "xbrltype": "durationItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodContractualTerm",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average Remaining Contractual Term, Granted",
        "documentation": "The contractual life of stock options under the Company's plans.",
        "label": "Share Based Compensation Arrangement By Share Based Payment Award Options Grants In Period Contractual Term"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockIssuedDuringPeriodSharesEmployeeStockOwnershipPlan",
     "presentation": [
      "http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common shares issued to ESOP during the period",
        "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": [
      "r13",
      "r57",
      "r74",
      "r75",
      "r106"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/ConsolidatedCashFlow"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Cash and cash equivalents, beginning of the year",
        "periodEndLabel": "Cash and cash equivalents, end of the year",
        "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": [
      "r34",
      "r92",
      "r182"
     ]
    },
    "us-gaap_StatementLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r188",
      "r189",
      "r190",
      "r218",
      "r537",
      "r579",
      "r590",
      "r593",
      "r594",
      "r595",
      "r596",
      "r597",
      "r598",
      "r601",
      "r604",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r611",
      "r612",
      "r614",
      "r615",
      "r616",
      "r617",
      "r618",
      "r620",
      "r622",
      "r623",
      "r627",
      "r628",
      "r629",
      "r630",
      "r631",
      "r632",
      "r633",
      "r634",
      "r635",
      "r636",
      "r637",
      "r638",
      "r641",
      "r681"
     ]
    },
    "esp_StockIssuedDuringPeriodSharesStockOptionExercised": {
     "xbrltype": "durationItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "StockIssuedDuringPeriodSharesStockOptionExercised",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average Remaining Contractual Term, Exercised",
        "documentation": "Weighted average remaining contractual term, exercised.",
        "label": "Stock Issued During Period Shares Stock Option Exercised"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityInteractiveDataCurrent": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityInteractiveDataCurrent",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Interactive Data Current",
        "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": [
      "r696"
     ]
    },
    "esp_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod": {
     "xbrltype": "durationItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitureAndExpirationsInPeriod",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average Remaining Contractual Term, Forfeited or expired",
        "documentation": "Weighted average remaining contractual term, forfeited or expired.",
        "label": "Share Based Compensation Arrangement By Share Based Payment Award Options Forfeiture And Expirations In Period"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate",
     "presentation": [
      "http://espey.com/role/ScheduleofWeightedAverageAssumptionsforOptionAwardsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Expected stock price 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": [
      "r391"
     ]
    },
    "esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsTable",
     "presentation": [
      "http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock-Based Compensation (Details) - Schedule of Changes in Non-Vested Stock Options [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_AuditorLocation": {
     "xbrltype": "internationalNameItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "AuditorLocation",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Auditor Location",
        "label": "Auditor Location"
       }
      }
     },
     "auth_ref": [
      "r691",
      "r692",
      "r693"
     ]
    },
    "esp_StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "StockBasedCompensationDetailsScheduleofChangesinNonVestedStockOptionsLineItems",
     "presentation": [
      "http://espey.com/role/ScheduleofChangesinNonVestedStockOptionsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Changes in Non-Vested Stock Options [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain",
     "presentation": [
      "http://espey.com/role/ScheduleofAvailableforSaleSecuritiesTable"
     ],
     "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": [
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r260",
      "r261",
      "r262",
      "r263",
      "r264",
      "r265",
      "r266",
      "r267",
      "r268",
      "r269",
      "r270",
      "r271",
      "r272",
      "r273",
      "r274",
      "r333",
      "r346",
      "r446",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r506",
      "r507",
      "r508",
      "r509",
      "r510",
      "r511",
      "r512",
      "r513",
      "r514",
      "r515",
      "r516",
      "r517",
      "r518",
      "r519",
      "r520",
      "r521",
      "r560",
      "r703",
      "r704",
      "r705",
      "r706",
      "r707",
      "r708",
      "r709",
      "r741",
      "r742",
      "r743",
      "r744"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate",
     "presentation": [
      "http://espey.com/role/ScheduleofWeightedAverageAssumptionsforOptionAwardsTable"
     ],
     "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": [
      "r393"
     ]
    },
    "dei_AuditorName": {
     "xbrltype": "internationalNameItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "AuditorName",
     "presentation": [
      "http://espey.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Auditor Name",
        "label": "Auditor Name"
       }
      }
     },
     "auth_ref": [
      "r691",
      "r692",
      "r693"
     ]
    },
    "esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceTable",
     "presentation": [
      "http://espey.com/role/ScheduleofReservedCommonSharesforFutureIssuanceTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Reserved Common Shares for Future Issuance [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "esp_StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "StockholdersEquityDetailsScheduleofReservedCommonSharesforFutureIssuanceLineItems",
     "presentation": [
      "http://espey.com/role/ScheduleofReservedCommonSharesforFutureIssuanceTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' Equity (Details) - Schedule of Reserved Common Shares for Future Issuance [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r13",
      "r75",
      "r601",
      "r619",
      "r803",
      "r804"
     ]
    },
    "us-gaap_TradeAccountsReceivableMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TradeAccountsReceivableMember",
     "presentation": [
      "http://espey.com/role/ConcentrationofCreditRiskDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Trade Accounts Receivable [Member]",
        "label": "Trade Accounts Receivable [Member]",
        "documentation": "Amount due from customers or clients for goods or services that have been delivered or sold in the normal course of business."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommonStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockValue",
     "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": "Common stock, par value $.33-1/3 per share\tAuthorized 10,000,000 shares; Issued 3,129,874 shares as of June 30, 2023 and 2022. Outstanding 2,702,633 as of June 30, 2023 and 2022 (includes 233,645 and 256,293 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": [
      "r75",
      "r553",
      "r676"
     ]
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommonStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r75"
     ]
    },
    "us-gaap_Revenues": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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",
      "http://espey.com/role/ScheduleofQuarterlyFinancialInformationTable"
     ],
     "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": [
      "r175",
      "r186",
      "r220",
      "r221",
      "r223",
      "r226",
      "r227",
      "r231",
      "r232",
      "r233",
      "r276",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r464",
      "r546",
      "r753"
     ]
    },
    "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageRemainingContractualTerm2",
     "presentation": [
      "http://espey.com/role/ScheduleofStockOptionActivityTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average Remaining Contractual Term, Exercisable",
        "label": "Share-Based Payment Arrangement, Option, Exercise Price Range, Exercisable, Weighted Average Remaining Contractual Term",
        "documentation": "Weighted average remaining contractual term of exercisable stock options, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r108"
     ]
    },
    "us-gaap_OperatingIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedIncomeStatement": {
       "parentTag": "us-gaap_IncomeLossAttributableToParent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "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": [
      "r219",
      "r224",
      "r228",
      "r230",
      "r669"
     ]
    },
    "us-gaap_EarningsPerShareDilutedAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareDilutedAbstract",
     "presentation": [
      "http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Diluted EPS:",
        "label": "Earnings Per Share, Diluted [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementTable",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement [Table]",
        "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed."
       }
      }
     },
     "auth_ref": [
      "r188",
      "r189",
      "r190",
      "r218",
      "r537",
      "r579",
      "r590",
      "r593",
      "r594",
      "r595",
      "r596",
      "r597",
      "r598",
      "r601",
      "r604",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r611",
      "r612",
      "r614",
      "r615",
      "r616",
      "r617",
      "r618",
      "r620",
      "r622",
      "r623",
      "r627",
      "r628",
      "r629",
      "r630",
      "r631",
      "r632",
      "r633",
      "r634",
      "r635",
      "r636",
      "r637",
      "r638",
      "r641",
      "r681"
     ]
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxPolicyTextBlock",
     "presentation": [
      "http://espey.com/role/AccountingPoliciesByPolicy"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income Taxes",
        "label": "Income Tax, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements."
       }
      }
     },
     "auth_ref": [
      "r171",
      "r405",
      "r406",
      "r410",
      "r411",
      "r414",
      "r416",
      "r583"
     ]
    },
    "us-gaap_AccruedPayrollTaxesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccruedPayrollTaxesCurrent",
     "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": "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": [
      "r22"
     ]
    },
    "us-gaap_LossContingencyAccrualAtCarryingValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LossContingencyAccrualAtCarryingValue",
     "crdr": "credit",
     "presentation": [
      "http://espey.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contingent liabilities",
        "label": "Loss Contingency Accrual",
        "documentation": "Amount of loss contingency liability."
       }
      }
     },
     "auth_ref": [
      "r307",
      "r698"
     ]
    },
    "esp_DeferredTaxLiabilityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "DeferredTaxLiabilityAbstract",
     "presentation": [
      "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred tax liability:",
        "label": "Deferred Tax Liability Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "presentation": [
      "http://espey.com/role/StockholdersEquityDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Purchase shares of common stock",
        "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": [
      "r214"
     ]
    },
    "us-gaap_IncreaseDecreaseInIncomeTaxesReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInIncomeTaxesReceivable",
     "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) decrease in income tax 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": [
      "r7"
     ]
    },
    "us-gaap_EarningsPerShareAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareAbstract",
     "presentation": [
      "http://espey.com/role/ConsolidatedIncomeStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Net income per share:",
        "label": "Earnings Per Share [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommonStockDividendsPerShareCashPaid": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockDividendsPerShareCashPaid",
     "presentation": [
      "http://espey.com/role/ShareholdersEquityType2or3_Parentheticals",
      "http://espey.com/role/StockholdersEquityDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Dividends declared per share (in Dollars per share)",
        "verboseLabel": "Cash dividends on common stock (in Dollars 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": [
      "r106"
     ]
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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) expense",
        "label": "Deferred Income Tax Expense (Benefit)",
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r8",
      "r113",
      "r138",
      "r423",
      "r424",
      "r721"
     ]
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Provision for Income Taxes [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInAccruedIncomeTaxesPayable",
     "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": "(Decrease) 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": [
      "r7"
     ]
    },
    "us-gaap_Depreciation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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",
      "http://espey.com/role/PropertyPlantandEquipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Depreciation",
        "verboseLabel": "Depreciation expense",
        "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": [
      "r8",
      "r49"
     ]
    },
    "us-gaap_StockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet",
      "http://espey.com/role/ShareholdersEquityType2or3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total stockholders' 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": [
      "r75",
      "r78",
      "r79",
      "r98",
      "r603",
      "r619",
      "r642",
      "r643",
      "r676",
      "r687",
      "r720",
      "r745",
      "r789",
      "r803"
     ]
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInInventories",
     "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": "(Increase) 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": [
      "r7"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r141",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r357",
      "r358",
      "r360"
     ]
    },
    "us-gaap_RevenuesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenuesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccountsReceivableMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccountsReceivableMember",
     "presentation": [
      "http://espey.com/role/SignificantCustomersDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts Receivable [Member]",
        "label": "Accounts Receivable [Member]",
        "documentation": "Due from customers or clients for goods or services that have been delivered or sold."
       }
      }
     },
     "auth_ref": [
      "r656"
     ]
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r714"
     ]
    },
    "us-gaap_DebtDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of Credit [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredIncomeTaxLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredIncomeTaxLiabilities",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable": {
       "parentTag": "esp_DeferredTaxAssetLiability",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ScheduleofDeferredTaxAssetsandLiabilitiesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total deferred tax liability",
        "label": "Deferred Tax Liabilities, Gross",
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences."
       }
      }
     },
     "auth_ref": [
      "r72",
      "r73",
      "r116",
      "r412"
     ]
    },
    "us-gaap_EquipmentExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EquipmentExpense",
     "crdr": "debit",
     "presentation": [
      "http://espey.com/role/PropertyPlantandEquipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Funding amount",
        "label": "Equipment Expense",
        "documentation": "This element represents equipment expense including depreciation, repairs, rentals, and service contract costs. This item also includes equipment purchases which do not qualify for capitalization in accordance with the entity's accounting policy. This item may also include furniture expenses."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccruedSalariesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r22",
      "r663"
     ]
    },
    "us-gaap_FairValueOfFinancialInstrumentsPolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueOfFinancialInstrumentsPolicy",
     "presentation": [
      "http://espey.com/role/AccountingPoliciesByPolicy"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair Value of Financial Instruments",
        "label": "Fair Value of Financial Instruments, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for determining the fair value of financial instruments."
       }
      }
     },
     "auth_ref": [
      "r10",
      "r16"
     ]
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RetainedEarningsAccumulatedDeficit",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock",
       "weight": 1.0,
       "order": 5.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": [
      "r77",
      "r106",
      "r555",
      "r572",
      "r577",
      "r584",
      "r602",
      "r676"
     ]
    },
    "esp_NetIncomePerShareAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "NetIncomePerShareAbstract",
     "presentation": [
      "http://espey.com/role/ScheduleofQuarterlyFinancialInformationTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Net income per share -",
        "label": "Net Income Per Share Abstract"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r181"
     ]
    },
    "us-gaap_OrderOrProductionBacklogMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": "Orders, production or production backlog arising from contracts such as purchase or sales orders acquired in a business combination."
       }
      }
     },
     "auth_ref": [
      "r66"
     ]
    },
    "us-gaap_EarningsPerSharePolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerSharePolicyTextBlock",
     "presentation": [
      "http://espey.com/role/AccountingPoliciesByPolicy"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Per Share Amounts",
        "label": "Earnings Per Share, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements."
       }
      }
     },
     "auth_ref": [
      "r39",
      "r40"
     ]
    },
    "us-gaap_IncreaseDecreaseInOtherAccruedLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInOtherAccruedLiabilities",
     "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) 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": [
      "r7"
     ]
    },
    "us-gaap_AccountsPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r18",
      "r676"
     ]
    },
    "us-gaap_CurrentFederalTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CurrentFederalTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://espey.com/role/ScheduleofComponentsoftheProvisionforIncomeTaxesTable": {
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://espey.com/role/ScheduleofComponentsoftheProvisionforIncomeTaxesTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current tax expense - federal",
        "label": "Current Federal Tax Expense (Benefit)",
        "documentation": "Amount of current federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction."
       }
      }
     },
     "auth_ref": [
      "r702",
      "r721",
      "r786"
     ]
    },
    "us-gaap_EarningsPerShareBasicAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareBasicAbstract",
     "presentation": [
      "http://espey.com/role/ScheduleofReconciliationoftheNumeratorsandDenominatorsoftheBasicandDilutedEarningsPerShareComputationsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Basic EPS:",
        "label": "Earnings Per Share, Basic [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccruedVacationCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r22",
      "r53"
     ]
    },
    "esp_DeferredTaxLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20230630",
     "localname": "DeferredTaxLiability",
     "crdr": "credit",
     "calculation": {
      "http://espey.com/role/ConsolidatedBalanceSheet": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://espey.com/role/ConsolidatedBalanceSheet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred tax liabilities",
        "documentation": "Deferred tax liabilities as of the balance sheet date.",
        "label": "Deferred Tax Liability"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r92",
      "r93",
      "r94"
     ]
    },
    "us-gaap_LiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": [
      "r23",
      "r150",
      "r186",
      "r276",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r432",
      "r433",
      "r434",
      "r464",
      "r676",
      "r753",
      "r791",
      "r792"
     ]
    },
    "esp_UnearnedEsopSharesCost": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20230630",
     "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": []
    },
    "us-gaap_EmployeeStockOptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeStockOptionMember",
     "presentation": [
      "http://espey.com/role/StockBasedCompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Share-Based Payment Arrangement, Option [Member]",
        "label": "Share-Based Payment Arrangement, Option [Member]",
        "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": []
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "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": []
    },
    "esp_TotalStockholdersEquityBeforyEsopAndTreasuryStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://espey.com/20230630",
     "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": []
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "05",
   "Paragraph": "4",
   "SubTopic": "10",
   "Topic": "360",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482338/360-10-05-4"
  },
  "r1": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "15",
   "Paragraph": "12",
   "Subparagraph": "(f)(2)",
   "SubTopic": "10",
   "Topic": "810",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481410/810-10-15-12"
  },
  "r2": {
   "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/2147481877/830-230-45-1"
  },
  "r3": {
   "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"
  },
  "r4": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "Subparagraph": "(i)",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A"
  },
  "r5": {
   "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"
  },
  "r6": {
   "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/2147481071/942-405-45-2"
  },
  "r7": {
   "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"
  },
  "r8": {
   "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"
  },
  "r9": {
   "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"
  },
  "r10": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "825",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-1"
  },
  "r11": {
   "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/2147481047/942-405-50-1"
  },
  "r12": {
   "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"
  },
  "r13": {
   "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"
  },
  "r14": {
   "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"
  },
  "r15": {
   "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"
  },
  "r16": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "60",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "820",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482053/820-10-60-1"
  },
  "r17": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "SubTopic": "35",
   "Topic": "605",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//605-35/tableOfContent"
  },
  "r18": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r19": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.19(b),22(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r20": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.19,20)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r21": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r22": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.20)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r23": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.21)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r24": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.22(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r25": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.25)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r26": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.29)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r27": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.29,30)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r28": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r29": {
   "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"
  },
  "r30": {
   "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"
  },
  "r31": {
   "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"
  },
  "r32": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15"
  },
  "r33": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25"
  },
  "r34": {
   "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"
  },
  "r35": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-1"
  },
  "r36": {
   "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"
  },
  "r37": {
   "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"
  },
  "r38": {
   "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"
  },
  "r39": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "260",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1"
  },
  "r40": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "260",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2"
  },
  "r41": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18"
  },
  "r42": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18"
  },
  "r43": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-20"
  },
  "r44": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-4"
  },
  "r45": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-8"
  },
  "r46": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-9"
  },
  "r47": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1"
  },
  "r48": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2"
  },
  "r49": {
   "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"
  },
  "r50": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "360",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1"
  },
  "r51": {
   "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"
  },
  "r52": {
   "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"
  },
  "r53": {
   "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"
  },
  "r54": {
   "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"
  },
  "r55": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r56": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r57": {
   "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"
  },
  "r58": {
   "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"
  },
  "r59": {
   "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"
  },
  "r60": {
   "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"
  },
  "r61": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "40",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480489/718-40-50-1"
  },
  "r62": {
   "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"
  },
  "r63": {
   "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"
  },
  "r64": {
   "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"
  },
  "r65": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "740",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-8"
  },
  "r66": {
   "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"
  },
  "r67": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "825",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-20"
  },
  "r68": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "825",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-21"
  },
  "r69": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "942",
   "SubTopic": "210",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03.10)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r70": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "942",
   "SubTopic": "210",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03.17)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r71": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "942",
   "SubTopic": "825",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480981/942-825-50-1"
  },
  "r72": {
   "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)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r73": {
   "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)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r74": {
   "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"
  },
  "r75": {
   "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"
  },
  "r76": {
   "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"
  },
  "r77": {
   "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"
  },
  "r78": {
   "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"
  },
  "r79": {
   "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"
  },
  "r80": {
   "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"
  },
  "r81": {
   "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"
  },
  "r82": {
   "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"
  },
  "r83": {
   "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,2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r84": {
   "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"
  },
  "r85": {
   "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"
  },
  "r86": {
   "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"
  },
  "r87": {
   "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(a),(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r88": {
   "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"
  },
  "r89": {
   "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"
  },
  "r90": {
   "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"
  },
  "r91": {
   "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"
  },
  "r92": {
   "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"
  },
  "r93": {
   "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"
  },
  "r94": {
   "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"
  },
  "r95": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "235",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//235/tableOfContent"
  },
  "r96": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "270",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//270/tableOfContent"
  },
  "r97": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "275",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//275/tableOfContent"
  },
  "r98": {
   "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"
  },
  "r99": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "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"
  },
  "r100": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//360/tableOfContent"
  },
  "r101": {
   "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"
  },
  "r102": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 5.CC)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480091/360-10-S99-2"
  },
  "r103": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "440",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//440/tableOfContent"
  },
  "r104": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "470",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//470/tableOfContent"
  },
  "r105": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//505/tableOfContent"
  },
  "r106": {
   "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"
  },
  "r107": {
   "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"
  },
  "r108": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "718",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Section": "50",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r109": {
   "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"
  },
  "r110": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Section": "50",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12"
  },
  "r111": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Section": "50",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2"
  },
  "r112": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Section": "50",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9"
  },
  "r113": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "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"
  },
  "r114": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "940",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//940-320/tableOfContent"
  },
  "r115": {
   "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/2147479853/942-210-S99-1"
  },
  "r116": {
   "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)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r117": {
   "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/2147479853/942-210-S99-1"
  },
  "r118": {
   "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/2147483589/942-220-S99-1"
  },
  "r119": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//942-320/tableOfContent"
  },
  "r120": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//946-320/tableOfContent"
  },
  "r121": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11B",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "310",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-11B"
  },
  "r122": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Subparagraph": "(d)",
   "SubTopic": "10",
   "Topic": "310",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-15"
  },
  "r123": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "SubTopic": "10",
   "Topic": "310",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-6"
  },
  "r124": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "910",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482546/910-10-50-4"
  },
  "r125": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "910",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482546/910-10-50-5"
  },
  "r126": {
   "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"
  },
  "r127": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "270",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482989/270-10-45-6"
  },
  "r128": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "270",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482964/270-10-50-1"
  },
  "r129": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1"
  },
  "r130": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1"
  },
  "r131": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1"
  },
  "r132": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1"
  },
  "r133": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "SubTopic": "360",
   "Topic": "958",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-1"
  },
  "r134": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-11"
  },
  "r135": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-12"
  },
  "r136": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "SubTopic": "360",
   "Topic": "958",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-6"
  },
  "r137": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "SubTopic": "360",
   "Topic": "958",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-7"
  },
  "r138": {
   "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"
  },
  "r139": {
   "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"
  },
  "r140": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//275/tableOfContent"
  },
  "r141": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//606/tableOfContent"
  },
  "r142": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1403",
   "Paragraph": "(b)",
   "Publisher": "SEC"
  },
  "r143": {
   "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"
  },
  "r144": {
   "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"
  },
  "r145": {
   "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"
  },
  "r146": {
   "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"
  },
  "r147": {
   "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"
  },
  "r148": {
   "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"
  },
  "r149": {
   "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"
  },
  "r150": {
   "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"
  },
  "r151": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1"
  },
  "r152": {
   "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"
  },
  "r153": {
   "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"
  },
  "r154": {
   "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(14))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r155": {
   "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"
  },
  "r156": {
   "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(3)(c)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r157": {
   "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(3)(c)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r158": {
   "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"
  },
  "r159": {
   "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"
  },
  "r160": {
   "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)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r161": {
   "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)(d)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r162": {
   "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"
  },
  "r163": {
   "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"
  },
  "r164": {
   "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"
  },
  "r165": {
   "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"
  },
  "r166": {
   "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"
  },
  "r167": {
   "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"
  },
  "r168": {
   "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"
  },
  "r169": {
   "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"
  },
  "r170": {
   "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"
  },
  "r171": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-1"
  },
  "r172": {
   "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"
  },
  "r173": {
   "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"
  },
  "r174": {
   "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"
  },
  "r175": {
   "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"
  },
  "r176": {
   "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"
  },
  "r177": {
   "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"
  },
  "r178": {
   "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"
  },
  "r179": {
   "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"
  },
  "r180": {
   "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"
  },
  "r181": {
   "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"
  },
  "r182": {
   "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"
  },
  "r183": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-1"
  },
  "r184": {
   "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(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r185": {
   "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(e)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r186": {
   "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"
  },
  "r187": {
   "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(h)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r188": {
   "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"
  },
  "r189": {
   "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"
  },
  "r190": {
   "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"
  },
  "r191": {
   "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"
  },
  "r192": {
   "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"
  },
  "r193": {
   "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"
  },
  "r194": {
   "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"
  },
  "r195": {
   "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"
  },
  "r196": {
   "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"
  },
  "r197": {
   "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"
  },
  "r198": {
   "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"
  },
  "r199": {
   "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"
  },
  "r200": {
   "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"
  },
  "r201": {
   "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"
  },
  "r202": {
   "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"
  },
  "r203": {
   "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"
  },
  "r204": {
   "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"
  },
  "r205": {
   "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"
  },
  "r206": {
   "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"
  },
  "r207": {
   "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"
  },
  "r208": {
   "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"
  },
  "r209": {
   "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"
  },
  "r210": {
   "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"
  },
  "r211": {
   "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"
  },
  "r212": {
   "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"
  },
  "r213": {
   "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"
  },
  "r214": {
   "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"
  },
  "r215": {
   "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"
  },
  "r216": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "270",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482964/270-10-50-1B"
  },
  "r217": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "270",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482964/270-10-50-6A"
  },
  "r218": {
   "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"
  },
  "r219": {
   "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"
  },
  "r220": {
   "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"
  },
  "r221": {
   "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"
  },
  "r222": {
   "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"
  },
  "r223": {
   "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"
  },
  "r224": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r225": {
   "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"
  },
  "r226": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r227": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r228": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r229": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r230": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r231": {
   "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"
  },
  "r232": {
   "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"
  },
  "r233": {
   "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"
  },
  "r234": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r235": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9"
  },
  "r236": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-1"
  },
  "r237": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-2"
  },
  "r238": {
   "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"
  },
  "r239": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481569/310-20-50-1"
  },
  "r240": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2"
  },
  "r241": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2"
  },
  "r242": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//320/tableOfContent"
  },
  "r243": {
   "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"
  },
  "r244": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-10"
  },
  "r245": {
   "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"
  },
  "r246": {
   "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"
  },
  "r247": {
   "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"
  },
  "r248": {
   "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"
  },
  "r249": {
   "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"
  },
  "r250": {
   "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"
  },
  "r251": {
   "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"
  },
  "r252": {
   "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"
  },
  "r253": {
   "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"
  },
  "r254": {
   "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"
  },
  "r255": {
   "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"
  },
  "r256": {
   "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"
  },
  "r257": {
   "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"
  },
  "r258": {
   "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"
  },
  "r259": {
   "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"
  },
  "r260": {
   "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"
  },
  "r261": {
   "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"
  },
  "r262": {
   "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"
  },
  "r263": {
   "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"
  },
  "r264": {
   "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"
  },
  "r265": {
   "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"
  },
  "r266": {
   "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"
  },
  "r267": {
   "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"
  },
  "r268": {
   "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"
  },
  "r269": {
   "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"
  },
  "r270": {
   "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"
  },
  "r271": {
   "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"
  },
  "r272": {
   "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"
  },
  "r273": {
   "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"
  },
  "r274": {
   "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"
  },
  "r275": {
   "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"
  },
  "r276": {
   "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"
  },
  "r277": {
   "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"
  },
  "r278": {
   "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"
  },
  "r279": {
   "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"
  },
  "r280": {
   "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"
  },
  "r281": {
   "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"
  },
  "r282": {
   "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"
  },
  "r283": {
   "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"
  },
  "r284": {
   "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"
  },
  "r285": {
   "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"
  },
  "r286": {
   "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"
  },
  "r287": {
   "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"
  },
  "r288": {
   "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"
  },
  "r289": {
   "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"
  },
  "r290": {
   "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"
  },
  "r291": {
   "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"
  },
  "r292": {
   "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"
  },
  "r293": {
   "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"
  },
  "r294": {
   "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"
  },
  "r295": {
   "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"
  },
  "r296": {
   "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"
  },
  "r297": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//330/tableOfContent"
  },
  "r298": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-1"
  },
  "r299": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-4"
  },
  "r300": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1"
  },
  "r301": {
   "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"
  },
  "r302": {
   "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"
  },
  "r303": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2"
  },
  "r304": {
   "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"
  },
  "r305": {
   "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"
  },
  "r306": {
   "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"
  },
  "r307": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-1"
  },
  "r308": {
   "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"
  },
  "r309": {
   "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"
  },
  "r310": {
   "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"
  },
  "r311": {
   "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"
  },
  "r312": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-3"
  },
  "r313": {
   "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"
  },
  "r314": {
   "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"
  },
  "r315": {
   "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"
  },
  "r316": {
   "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"
  },
  "r317": {
   "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"
  },
  "r318": {
   "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"
  },
  "r319": {
   "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"
  },
  "r320": {
   "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"
  },
  "r321": {
   "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"
  },
  "r322": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B"
  },
  "r323": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B"
  },
  "r324": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B"
  },
  "r325": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B"
  },
  "r326": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B"
  },
  "r327": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1C",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C"
  },
  "r328": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1C",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C"
  },
  "r329": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1C",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C"
  },
  "r330": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E"
  },
  "r331": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I"
  },
  "r332": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I"
  },
  "r333": {
   "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"
  },
  "r334": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I"
  },
  "r335": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13"
  },
  "r336": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13"
  },
  "r337": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13"
  },
  "r338": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13"
  },
  "r339": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13"
  },
  "r340": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14"
  },
  "r341": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14"
  },
  "r342": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14"
  },
  "r343": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "16",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-16"
  },
  "r344": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18"
  },
  "r345": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18"
  },
  "r346": {
   "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"
  },
  "r347": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18"
  },
  "r348": {
   "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"
  },
  "r349": {
   "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"
  },
  "r350": {
   "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"
  },
  "r351": {
   "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"
  },
  "r352": {
   "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"
  },
  "r353": {
   "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"
  },
  "r354": {
   "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"
  },
  "r355": {
   "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"
  },
  "r356": {
   "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"
  },
  "r357": {
   "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"
  },
  "r358": {
   "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"
  },
  "r359": {
   "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"
  },
  "r360": {
   "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"
  },
  "r361": {
   "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"
  },
  "r362": {
   "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"
  },
  "r363": {
   "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"
  },
  "r364": {
   "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"
  },
  "r365": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-7"
  },
  "r366": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//718/tableOfContent"
  },
  "r367": {
   "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"
  },
  "r368": {
   "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"
  },
  "r369": {
   "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"
  },
  "r370": {
   "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"
  },
  "r371": {
   "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"
  },
  "r372": {
   "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"
  },
  "r373": {
   "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"
  },
  "r374": {
   "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"
  },
  "r375": {
   "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"
  },
  "r376": {
   "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"
  },
  "r377": {
   "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"
  },
  "r378": {
   "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"
  },
  "r379": {
   "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"
  },
  "r380": {
   "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"
  },
  "r381": {
   "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"
  },
  "r382": {
   "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"
  },
  "r383": {
   "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"
  },
  "r384": {
   "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"
  },
  "r385": {
   "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"
  },
  "r386": {
   "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"
  },
  "r387": {
   "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"
  },
  "r388": {
   "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"
  },
  "r389": {
   "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"
  },
  "r390": {
   "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"
  },
  "r391": {
   "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"
  },
  "r392": {
   "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"
  },
  "r393": {
   "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"
  },
  "r394": {
   "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"
  },
  "r395": {
   "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"
  },
  "r396": {
   "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"
  },
  "r397": {
   "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"
  },
  "r398": {
   "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"
  },
  "r399": {
   "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"
  },
  "r400": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r401": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r402": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r403": {
   "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"
  },
  "r404": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//740/tableOfContent"
  },
  "r405": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-25"
  },
  "r406": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-28"
  },
  "r407": {
   "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"
  },
  "r408": {
   "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"
  },
  "r409": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14"
  },
  "r410": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "17",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17"
  },
  "r411": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-19"
  },
  "r412": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2"
  },
  "r413": {
   "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"
  },
  "r414": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-20"
  },
  "r415": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21"
  },
  "r416": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r417": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8"
  },
  "r418": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8"
  },
  "r419": {
   "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"
  },
  "r420": {
   "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"
  },
  "r421": {
   "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.5.Q1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r422": {
   "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"
  },
  "r423": {
   "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.Fact.1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r424": {
   "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.Fact.2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r425": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 11.C)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2"
  },
  "r426": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "270",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1"
  },
  "r427": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2"
  },
  "r428": {
   "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"
  },
  "r429": {
   "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"
  },
  "r430": {
   "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"
  },
  "r431": {
   "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"
  },
  "r432": {
   "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"
  },
  "r433": {
   "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"
  },
  "r434": {
   "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"
  },
  "r435": {
   "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"
  },
  "r436": {
   "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"
  },
  "r437": {
   "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"
  },
  "r438": {
   "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"
  },
  "r439": {
   "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"
  },
  "r440": {
   "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"
  },
  "r441": {
   "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"
  },
  "r442": {
   "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"
  },
  "r443": {
   "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"
  },
  "r444": {
   "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"
  },
  "r445": {
   "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"
  },
  "r446": {
   "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"
  },
  "r447": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480237/815-40-50-6"
  },
  "r448": {
   "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"
  },
  "r449": {
   "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"
  },
  "r450": {
   "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"
  },
  "r451": {
   "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"
  },
  "r452": {
   "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"
  },
  "r453": {
   "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"
  },
  "r454": {
   "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"
  },
  "r455": {
   "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"
  },
  "r456": {
   "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"
  },
  "r457": {
   "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"
  },
  "r458": {
   "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"
  },
  "r459": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2"
  },
  "r460": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-6B"
  },
  "r461": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6B",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-6B"
  },
  "r462": {
   "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"
  },
  "r463": {
   "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"
  },
  "r464": {
   "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"
  },
  "r465": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6"
  },
  "r466": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6"
  },
  "r467": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6"
  },
  "r468": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6"
  },
  "r469": {
   "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"
  },
  "r470": {
   "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"
  },
  "r471": {
   "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"
  },
  "r472": {
   "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"
  },
  "r473": {
   "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"
  },
  "r474": {
   "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"
  },
  "r475": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "832",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483482/832-10-65-1"
  },
  "r476": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "832",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483482/832-10-65-1"
  },
  "r477": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5"
  },
  "r478": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5"
  },
  "r479": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5"
  },
  "r480": {
   "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"
  },
  "r481": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479773/842-30-50-5"
  },
  "r482": {
   "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"
  },
  "r483": {
   "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"
  },
  "r484": {
   "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"
  },
  "r485": {
   "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"
  },
  "r486": {
   "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"
  },
  "r487": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//850/tableOfContent"
  },
  "r488": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1"
  },
  "r489": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1"
  },
  "r490": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1"
  },
  "r491": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-6"
  },
  "r492": {
   "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"
  },
  "r493": {
   "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"
  },
  "r494": {
   "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"
  },
  "r495": {
   "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"
  },
  "r496": {
   "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"
  },
  "r497": {
   "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"
  },
  "r498": {
   "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"
  },
  "r499": {
   "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"
  },
  "r500": {
   "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"
  },
  "r501": {
   "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"
  },
  "r502": {
   "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"
  },
  "r503": {
   "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"
  },
  "r504": {
   "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"
  },
  "r505": {
   "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"
  },
  "r506": {
   "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"
  },
  "r507": {
   "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"
  },
  "r508": {
   "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"
  },
  "r509": {
   "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"
  },
  "r510": {
   "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"
  },
  "r511": {
   "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"
  },
  "r512": {
   "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"
  },
  "r513": {
   "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"
  },
  "r514": {
   "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"
  },
  "r515": {
   "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"
  },
  "r516": {
   "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"
  },
  "r517": {
   "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"
  },
  "r518": {
   "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"
  },
  "r519": {
   "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"
  },
  "r520": {
   "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"
  },
  "r521": {
   "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"
  },
  "r522": {
   "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"
  },
  "r523": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "910",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482332/910-20-50-1"
  },
  "r524": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//912/tableOfContent"
  },
  "r525": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "SubTopic": "275",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482094/912-275-50-2"
  },
  "r526": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "SubTopic": "275",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482094/912-275-50-3"
  },
  "r527": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "SubTopic": "275",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482094/912-275-50-4"
  },
  "r528": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "SubTopic": "275",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482094/912-275-50-5"
  },
  "r529": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "SubTopic": "275",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482094/912-275-50-6"
  },
  "r530": {
   "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/2147482312/912-310-45-11"
  },
  "r531": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482283/912-310-50-1"
  },
  "r532": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482283/912-310-50-4"
  },
  "r533": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "SubTopic": "330",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482105/912-330-50-1"
  },
  "r534": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "SubTopic": "405",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482379/912-405-45-4"
  },
  "r535": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "SubTopic": "405",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482363/912-405-50-2"
  },
  "r536": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "SubTopic": "405",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482363/912-405-50-3"
  },
  "r537": {
   "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"
  },
  "r538": {
   "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"
  },
  "r539": {
   "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"
  },
  "r540": {
   "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"
  },
  "r541": {
   "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"
  },
  "r542": {
   "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/2147483147/928-340-50-1"
  },
  "r543": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r544": {
   "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/2147483589/942-220-S99-1"
  },
  "r545": {
   "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/2147483589/942-220-S99-1"
  },
  "r546": {
   "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/2147479557/942-235-S99-1"
  },
  "r547": {
   "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/2147480832/942-320-50-3A"
  },
  "r548": {
   "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/2147480832/942-320-50-3A"
  },
  "r549": {
   "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/2147480842/942-360-50-1"
  },
  "r550": {
   "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/2147479440/944-210-S99-1"
  },
  "r551": {
   "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/2147479440/944-210-S99-1"
  },
  "r552": {
   "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/2147479440/944-210-S99-1"
  },
  "r553": {
   "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/2147479440/944-210-S99-1"
  },
  "r554": {
   "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/2147479440/944-210-S99-1"
  },
  "r555": {
   "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/2147479440/944-210-S99-1"
  },
  "r556": {
   "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/2147479440/944-210-S99-1"
  },
  "r557": {
   "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)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r558": {
   "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/2147479440/944-210-S99-1"
  },
  "r559": {
   "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/2147483586/944-220-S99-1"
  },
  "r560": {
   "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/2147483586/944-220-S99-1"
  },
  "r561": {
   "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/2147483586/944-220-S99-1"
  },
  "r562": {
   "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/2147483586/944-220-S99-1"
  },
  "r563": {
   "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(3)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r564": {
   "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/2147483586/944-220-S99-1"
  },
  "r565": {
   "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"
  },
  "r566": {
   "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"
  },
  "r567": {
   "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"
  },
  "r568": {
   "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"
  },
  "r569": {
   "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"
  },
  "r570": {
   "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"
  },
  "r571": {
   "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"
  },
  "r572": {
   "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"
  },
  "r573": {
   "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"
  },
  "r574": {
   "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"
  },
  "r575": {
   "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"
  },
  "r576": {
   "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"
  },
  "r577": {
   "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"
  },
  "r578": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "825",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B"
  },
  "r579": {
   "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"
  },
  "r580": {
   "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(f)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3"
  },
  "r581": {
   "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(f)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3"
  },
  "r582": {
   "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(f)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3"
  },
  "r583": {
   "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(h)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3"
  },
  "r584": {
   "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"
  },
  "r585": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13"
  },
  "r586": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-2"
  },
  "r587": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-5"
  },
  "r588": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-6"
  },
  "r589": {
   "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/2147480767/946-205-45-4"
  },
  "r590": {
   "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/2147480555/946-210-45-4"
  },
  "r591": {
   "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/2147480524/946-210-50-6"
  },
  "r592": {
   "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/2147480524/946-210-50-6"
  },
  "r593": {
   "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/2147479617/946-210-S99-1"
  },
  "r594": {
   "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/2147479617/946-210-S99-1"
  },
  "r595": {
   "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/2147479617/946-210-S99-1"
  },
  "r596": {
   "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/2147479617/946-210-S99-1"
  },
  "r597": {
   "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/2147479617/946-210-S99-1"
  },
  "r598": {
   "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/2147479617/946-210-S99-1"
  },
  "r599": {
   "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/2147479617/946-210-S99-1"
  },
  "r600": {
   "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/2147479617/946-210-S99-1"
  },
  "r601": {
   "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/2147479617/946-210-S99-1"
  },
  "r602": {
   "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/2147479617/946-210-S99-1"
  },
  "r603": {
   "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/2147479617/946-210-S99-1"
  },
  "r604": {
   "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/2147479617/946-210-S99-1"
  },
  "r605": {
   "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/2147479617/946-210-S99-1"
  },
  "r606": {
   "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/2147479617/946-210-S99-1"
  },
  "r607": {
   "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/2147479617/946-210-S99-1"
  },
  "r608": {
   "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/2147479617/946-210-S99-1"
  },
  "r609": {
   "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/2147479617/946-210-S99-1"
  },
  "r610": {
   "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/2147479617/946-210-S99-1"
  },
  "r611": {
   "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/2147479617/946-210-S99-1"
  },
  "r612": {
   "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/2147479617/946-210-S99-1"
  },
  "r613": {
   "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/2147479617/946-210-S99-1"
  },
  "r614": {
   "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/2147479617/946-210-S99-1"
  },
  "r615": {
   "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/2147479617/946-210-S99-1"
  },
  "r616": {
   "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/2147479617/946-210-S99-1"
  },
  "r617": {
   "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/2147479617/946-210-S99-1"
  },
  "r618": {
   "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/2147479617/946-210-S99-2"
  },
  "r619": {
   "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/2147479617/946-210-S99-2"
  },
  "r620": {
   "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/2147483581/946-220-45-3"
  },
  "r621": {
   "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/2147483581/946-220-45-7"
  },
  "r622": {
   "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/2147483575/946-220-S99-1"
  },
  "r623": {
   "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/2147483575/946-220-S99-1"
  },
  "r624": {
   "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)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r625": {
   "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)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r626": {
   "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)(g)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r627": {
   "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/2147483575/946-220-S99-1"
  },
  "r628": {
   "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/2147483575/946-220-S99-1"
  },
  "r629": {
   "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/2147483575/946-220-S99-1"
  },
  "r630": {
   "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/2147483575/946-220-S99-1"
  },
  "r631": {
   "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/2147483575/946-220-S99-1"
  },
  "r632": {
   "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/2147483575/946-220-S99-1"
  },
  "r633": {
   "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/2147483575/946-220-S99-1"
  },
  "r634": {
   "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/2147483575/946-220-S99-1"
  },
  "r635": {
   "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/2147483575/946-220-S99-1"
  },
  "r636": {
   "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/2147483575/946-220-S99-1"
  },
  "r637": {
   "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/2147483575/946-220-S99-1"
  },
  "r638": {
   "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/2147483575/946-220-S99-1"
  },
  "r639": {
   "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/2147483575/946-220-S99-1"
  },
  "r640": {
   "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/2147483575/946-220-S99-3"
  },
  "r641": {
   "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/2147483575/946-220-S99-3"
  },
  "r642": {
   "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/2147483575/946-220-S99-3"
  },
  "r643": {
   "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/2147483575/946-220-S99-3"
  },
  "r644": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2"
  },
  "r645": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2"
  },
  "r646": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2"
  },
  "r647": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2"
  },
  "r648": {
   "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/2147480032/946-320-S99-1"
  },
  "r649": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "12",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-12"
  },
  "r650": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "19",
   "Subparagraph": "(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-19"
  },
  "r651": {
   "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/2147480032/946-320-S99-2"
  },
  "r652": {
   "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/2147480032/946-320-S99-3"
  },
  "r653": {
   "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/2147480032/946-320-S99-3"
  },
  "r654": {
   "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/2147480032/946-320-S99-6"
  },
  "r655": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "505",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-6"
  },
  "r656": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "954",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481027/954-310-50-2"
  },
  "r657": {
   "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/2147480327/954-440-50-1"
  },
  "r658": {
   "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/2147482856/976-310-50-1"
  },
  "r659": {
   "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/2147482707/978-310-50-1"
  },
  "r660": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)",
   "SubTopic": "10",
   "Topic": "235",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4"
  },
  "r661": {
   "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"
  },
  "r662": {
   "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"
  },
  "r663": {
   "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"
  },
  "r664": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4"
  },
  "r665": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4"
  },
  "r666": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4"
  },
  "r667": {
   "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"
  },
  "r668": {
   "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"
  },
  "r669": {
   "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"
  },
  "r670": {
   "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"
  },
  "r671": {
   "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"
  },
  "r672": {
   "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"
  },
  "r673": {
   "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"
  },
  "r674": {
   "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"
  },
  "r675": {
   "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"
  },
  "r676": {
   "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"
  },
  "r677": {
   "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"
  },
  "r678": {
   "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/2147480524/946-210-50-1"
  },
  "r679": {
   "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/2147480524/946-210-50-6"
  },
  "r680": {
   "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/2147480493/946-210-55-1"
  },
  "r681": {
   "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/2147480833/946-310-45-1"
  },
  "r682": {
   "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/2147480032/946-320-S99-1"
  },
  "r683": {
   "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/2147480032/946-320-S99-2"
  },
  "r684": {
   "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/2147480032/946-320-S99-3"
  },
  "r685": {
   "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/2147480032/946-320-S99-6"
  },
  "r686": {
   "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/2147480167/946-830-55-10"
  },
  "r687": {
   "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/2147480167/946-830-55-12"
  },
  "r688": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r689": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r690": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r691": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-K",
   "Number": "249",
   "Section": "310"
  },
  "r692": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Number": "249",
   "Section": "220",
   "Subsection": "f"
  },
  "r693": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Number": "249",
   "Section": "240",
   "Subsection": "f"
  },
  "r694": {
   "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"
  },
  "r695": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w"
  },
  "r696": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "405"
  },
  "r697": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "405"
  },
  "r698": {
   "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"
  },
  "r699": {
   "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"
  },
  "r700": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18"
  },
  "r701": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "SubTopic": "825",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B"
  },
  "r702": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9"
  },
  "r703": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "(a)",
   "Publisher": "SEC"
  },
  "r704": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "(b)",
   "Subparagraph": "(1)",
   "Publisher": "SEC"
  },
  "r705": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "(b)",
   "Subparagraph": "(2)",
   "Publisher": "SEC"
  },
  "r706": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "(b)",
   "Subparagraph": "(3)",
   "Publisher": "SEC"
  },
  "r707": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "(c)",
   "Subparagraph": "(2)(i)",
   "Publisher": "SEC"
  },
  "r708": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "(c)",
   "Subparagraph": "(2)(ii)",
   "Publisher": "SEC"
  },
  "r709": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "(c)",
   "Subparagraph": "(2)(iii)",
   "Publisher": "SEC"
  },
  "r710": {
   "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(3)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r711": {
   "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"
  },
  "r712": {
   "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"
  },
  "r713": {
   "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"
  },
  "r714": {
   "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"
  },
  "r715": {
   "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"
  },
  "r716": {
   "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"
  },
  "r717": {
   "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"
  },
  "r718": {
   "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"
  },
  "r719": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28"
  },
  "r720": {
   "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"
  },
  "r721": {
   "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"
  },
  "r722": {
   "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"
  },
  "r723": {
   "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"
  },
  "r724": {
   "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"
  },
  "r725": {
   "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"
  },
  "r726": {
   "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"
  },
  "r727": {
   "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"
  },
  "r728": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481830/320-10-45-1"
  },
  "r729": {
   "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"
  },
  "r730": {
   "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"
  },
  "r731": {
   "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"
  },
  "r732": {
   "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"
  },
  "r733": {
   "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"
  },
  "r734": {
   "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"
  },
  "r735": {
   "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"
  },
  "r736": {
   "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"
  },
  "r737": {
   "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"
  },
  "r738": {
   "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"
  },
  "r739": {
   "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"
  },
  "r740": {
   "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"
  },
  "r741": {
   "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"
  },
  "r742": {
   "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"
  },
  "r743": {
   "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"
  },
  "r744": {
   "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"
  },
  "r745": {
   "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"
  },
  "r746": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-5"
  },
  "r747": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3"
  },
  "r748": {
   "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"
  },
  "r749": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//450/tableOfContent"
  },
  "r750": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4"
  },
  "r751": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9"
  },
  "r752": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-3"
  },
  "r753": {
   "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"
  },
  "r754": {
   "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"
  },
  "r755": {
   "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"
  },
  "r756": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r757": {
   "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"
  },
  "r758": {
   "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"
  },
  "r759": {
   "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"
  },
  "r760": {
   "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"
  },
  "r761": {
   "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"
  },
  "r762": {
   "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"
  },
  "r763": {
   "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"
  },
  "r764": {
   "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"
  },
  "r765": {
   "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"
  },
  "r766": {
   "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"
  },
  "r767": {
   "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"
  },
  "r768": {
   "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"
  },
  "r769": {
   "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"
  },
  "r770": {
   "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"
  },
  "r771": {
   "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"
  },
  "r772": {
   "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"
  },
  "r773": {
   "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"
  },
  "r774": {
   "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"
  },
  "r775": {
   "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"
  },
  "r776": {
   "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"
  },
  "r777": {
   "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"
  },
  "r778": {
   "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"
  },
  "r779": {
   "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"
  },
  "r780": {
   "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"
  },
  "r781": {
   "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"
  },
  "r782": {
   "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"
  },
  "r783": {
   "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"
  },
  "r784": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r785": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-6"
  },
  "r786": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r787": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.Fact.4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r788": {
   "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"
  },
  "r789": {
   "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"
  },
  "r790": {
   "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"
  },
  "r791": {
   "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"
  },
  "r792": {
   "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"
  },
  "r793": {
   "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"
  },
  "r794": {
   "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"
  },
  "r795": {
   "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"
  },
  "r796": {
   "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"
  },
  "r797": {
   "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"
  },
  "r798": {
   "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"
  },
  "r799": {
   "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/2147480832/942-320-50-2"
  },
  "r800": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-15"
  },
  "r801": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "16",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-16"
  },
  "r802": {
   "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/2147480767/946-205-45-4"
  },
  "r803": {
   "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/2147483575/946-220-S99-3"
  },
  "r804": {
   "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/2147483575/946-220-S99-3"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>80
<FILENAME>0001174947-23-001137-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001174947-23-001137-xbrl.zip
M4$L#!!0    ( #2 -5=5YM1#J/P  &!:"0 0    97-P+3(P,C,P-C,P+FAT
M;>R]:W/;1K8H^EU5^@_8FF3&K@O1?%.R$Y^293FC<QQ)1U)V]MPOMT"B22$&
M 0X 2M;\^KL>W8T&"%*D^! I8^^:)")!=/=:J]?[\<O_^C[TK7L1Q5X8_'I0
MJU0/+!'T0M<+!K\>G-R<GI\?_*^/^WN__-?AH?6;"$3D),*UNH_6:3@<W?0\
MZS9R@K@?1D/K33)\:QU:=TDR>O_NW</#0Z4'S\0]+Q)Q.(YZ(L8/K,-#];[3
M2.#;WENW=V/K1HRL>LVJ-=^WZN^K3>N/VU.K7JTWY/-W">P3]AK$[]TD^O7
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
M, 1"!R$@"18%O+P1>,+B?9!+L<[N41_ R4'2^=XW9+#J)92[Q#(4!8\1WD7
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
MX1B)T3A)<^,S?0WQ6F+O!5LE/0(L>,T)H+Z\^C@C)Z!5Y@103D"SS G88$[
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
M8P=N5OU\4N,/<528>03  TVA)HCA0;GBB"?IFN8^NWYH,!C/"LM-62W"79R
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
M9-ZA>X7F%BMLBVP6;FO78DK&TI6H_4S<RPNHSYA_RAR6^6%*V_/W*K VT:J
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
M6K"9*K(H\\#JJ!^LV\<1'/@D<KI>[X-U =>-P7$1(@C@\AB_>J=^AE\9@-7
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
MM="$@6;QB(C )'0$$0)ZAA%L>^(%\(I'E$M$$?H6L,^<CB5:P#4 =VGR0/_
M5_9D!>"&WWNAC82$(X(%/MF.HXAKS#T\!A_\*% @0*29'>)?0<XY-,@47P^Z
M(M#4A'[Q*KKO*Y9(>R7N6[(0Z.PL!-K5"(%_J$EB@D,4;!YB3.+?!0B:8<V
M;0P[K-<>X(C'C+EH$0"_<P0?R^%^(5D:G)\LW\?<-3(Z%PKDO:I;+[^-UP\K
M+T/B5A,1P^AN()>N_RO^4JZ1+P5K7)G/7=!H#%XH^$LF3^QX#IHY>%#P3O&/
MP)B.P]<K%F+-:?^PZIB9\84@%HESQ^*O#J_-8R(GKTRO>\^;@MGEQ<* VUKR
MQ[!6-Q"#>@5I%%5MN@)C#!LT##R,(,!KP2Q8ASH*>)8=XL"_"5O0;N IZA;#
MHAE)5;A&P0->HGIM3/)X3'><SE&,(XE%RC\>X/SFUD\T+,('6(5\'O&UB6(%
MOAW8)'C@)QZ(O2""10'!Y0O#)P\O+MUG72#!7V,)4*]1__LO-HE0L%ITUUUF
M<=(%%@;P@&--_'CEIX(%X?! Y!-_"6$Q_A>C/ND+%A#=G05$IS(!P1XM)T+)
MS:6\T&HZN\.'<UN4KB+KQE8"\6XVW^HW6G PWAHAEMB4"Z; >+ >J?[#98KK
MA,+#&P]< 2N7OI)F0M=K_XJF]R11;)R62&W#M%*Y%'SJQB?]@VE+QJ72;18Q
M3*[R<'W)"SM&.%:LOQ=[HWM$3R1]B##9$Q(X?#!=+$I2J3MFM$()E\9-!9UJ
MW#?,6%CZ[LAI32Q5ZG8,AL*UM1PD=L <AR\ GRF%-U^HMDZ^+H?"AADOA;6N
MKA-EITMF1RQ%0%C_2] (7_>)(0$=@[J^^8A>XSN[CQSACK[\=/O]%>F*<+G
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
M=X6'>8 "_V,A2N.D8CB1(,"F7"RS]YD*V6 P1Q=8]1K/5IKP7->Z)Y189(_
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
M)]M=10NJ%[=YJY-[J=7)IWK"N;?5/^JVJCJLP5D=UC&N8Z'!M=1R(K >L K
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
M\,@@ ($1(JP&&-OD(4OZX>E.\#'&U)I;]TR>\APL42;\Q ".*?:.@2*6@V(
M#OP6&4JLG:QUN67BG(1]\F0[#FR.KX7ASS"KA;^"-P4V'A/(%#A 8;FEF$:W
M=^^-;J]IH"G=;KY)Z!+ZK/4F&7&@=UIXZ9A Y%"Q"_E^,MJ 59CEDQV)<6QT
MOA'Y%_E\CF3#$UY;)EB>4Q3R0KP!!\XQFH'WAE]SC'_8Q!LF\KOM3=$-!_;D
MGCV*&&YXK3OBA[=MTHVMW1$:1E>$!H[0,+PB-#PWA(:DP6NLV;OG"-.02*^G
M-M47=FT.)N;^P4@\H_].^5F9Z41KEMLQ\!!NNE*>S['L.?HKODVH5SSN .\D
M8QK_*]QD#[U63#>"?>('I"9D?K)A_./!=AA]C>M',HO)=I'OFE@N#S4@)!?H
M!A6U%SH\7((">6(R;A['%]#Z=Z0:6GLL*3U\, 4S+/R<4;+2FH*:AV7RF!4W
MXGVU8C,M'F[*Q5/\W ,M9JF$ &619X[WA'Z"C"!07,3G]'8]M2:P&=!3:.0#
M!#HKSYXP6012V,=_1V"GH3#8PZG/_<!#!ZI[ H!&K.TO!E_=\XA6?V<!\Q]5
MF%HVKS^'K>]R'5BPT%!6.-&HG&TND4T_>?XGBC]\#H((;?O=$'!HC/$^+T@&
M9!X(HI _1"4;XDBQC)38XE'H07,<G4 %_*N"O2F!0=+T=9DG5#HLSG 75!QE
M]V(UX6OP.4-/?419%O%93O2<_=J.AX/4KL<['4-)#YJ=1Q_R_N6LYS'8KN+.
MU1U[?)),8SU:MD/7#"62E$07V_1Q')9+ELK?2I*#**3BZ>S:^5[7;/4+MI2=
M43^' MQ-ZDFI/J]-'5F<*10LWNSWUL(.+8>SFE3 :THWD^6ZO:;9.VB[QJX
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
M7'PD &+=8>JOG+<'\;L(& 2W7OQA,'W0:E U+",?@$[L\8%H#'X3@2LX,W(
MJ 7-)F]:V6Z'X)5Y(+]'RGL4H?6_ -W1UT91ONBS-80<PHQ!!Z<CT/#[*9#^
MB:-,P].Y<YB+Z8?DQ/>@'@L(U0&K(X11&''1B<%ZZ63P/< /[AW>,>C"T7KD
MR78>P \S+\!3?!_#&V803D\;(X_-(5C#N=<L^DL;FA,^?8--%IY "?G/&.<X
M3)S+JOD(LL=515;_"K+?OQO2O1^1&^_W,43\RA#PQV?E$PPP#OM'^HN\:=.Z
M0:"MB4V<C[<-FS#NB_W.=*CA&N@-<WWC\I_SE1K"-F4N!^Y]#\"+'@F7(!#
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
MG03_?V<;@Q/\L.OVS)/_!U!+ P04    "  T@#570WKJ!7$5  !U  $ $
M &5S<"TR,#(S,#8S,"YX<V3M75MWVCH6?C^_PI.7Z:Q.2H#07%;36>1"2T\2
M,H'T-FO66<86X,;85+))Z*\?2;;!%]T,N:@3OYR38FGKV_JDK:VMV[M_W4]=
M8PX@<GSO:*O^9F?+ )[EVXXW/MJZZ6^W^R?=[M:_WAO&'^_^MKUM?  >@&8
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
M-&65"Y%'(R.#/KP)P0F($K^J=>\\O6:8,=N91O>DE%CDI%A%[P?U3][NO+T
M:8_AF1:U,U"$AW2X\U$M])#"$^G6<2 *8D:UT(8!B.N5=/P0!A.MT#,0"7K#
M!^"/H3F;.%9A+*]KH8\"0/&=6.28TQRDMCQJH98 &-]CZN*IP=RQ0]-->IPF
MNG!@B?P"W[/)+<^XD0Y-[[9'#Z39Y' :.N\>]ZZU4$P1)-<Z+%=W4-N:.& .
M;"W4XL(2Q77\9#$&G#H03_M]B+101@",WY%P)FPA76?D9#=#ZZ*1"!Q_FPWQ
MR:QD>[<VS@$?%S<N1'9%VCH-JBQ$@LXRF#A0*_P,0%RC-;CS!Q,_)+.^/EF.
MUJ8A"8 )[G_-90J QAKEP$FO;^WWKJ)0K!;:<&$)[]-W G0*7.P(04U&1R8D
M[I7BY+80T!O%!^AU>FE< $UXUH*Q8J^-3D)PHJ4[WPIIK-VSS[#7'2QT?.%<
M"61"W;L:5A)9$S UJ>W['U!+ P04    "  T@#57K_7>F;0-   QG@  %
M &5S<"TR,#(S,#8S,%]C86PN>&UL[5UK=]JX%OT^O\(W]\N]JXM"(&D>J^DL
M0D)+A@0*>;2=-6N6L$5P8B0JV3SZZZ]DX\0V?LA&QI [GTJ)T3[:6SHZ>AU_
M_'T^-I0I)%3'Z&QO_WUE3X%(Q9J.'L_V[OJE>K_1:NW]_DE1?OOXKU))^0P1
M),"$FC)8* T\GO157;DE -$A)F/E/^;XOTI)&9GFY+1<GLUF[U7V#%5U BFV
MB HI_T(IE5B!;I$- GF!I\KMR%+Z<*)4]Y7]@]/#ZFGE0+F[;2C52K7F_.2W
MCX:.G@> 0H79C>C9G@=I/B#&>TP>R]5*I59V']QSGCR=\R]\S\]J]M/[)R<G
M9?NO+X]2/>Q!5NQ^^=MUNZ^.X!B4=$1-@%0.0/53:G_9QBHP;283[5(BG^#_
M*[F/E?A7I?UJJ;;_?DZU/8<W1?E(L %[<*C8EI^:BPD\VZ/Z>&)P@^SO1@0.
MS_8@G90X@94/M0HOX=_LB[_)WPV,*#9TC3-_#@Q>D?X(0G-/X07?]5HO56#/
MPP57K<S_4H[\8?F3;+M:K"&.8=]DG\<0I3,M^-OR)^FT-0 =-0T\2V77RX^X
M03(LXJU1LPR(A[PW8L0J2_'0',$NP5.==VO6,1TV;L$<TELPX"4GF)RMU+*L
MUOD*?P&'D!"H,90ZI="D &EM'0QT0S?U]+41*LZIAMQZ7/8[W?X(D/0F!W\I
MO^'T((5DRMHF'H\Q<K"8O$W+M AL46KQ3I[6[!2%NGU3!89J&;8#;3/S?16#
M<Q,B#6INU3A::A?EX# D ZN^T@WNMS%Q"S?  !IG>Q8M/0(P^;N%IJS]8[*X
MX?[12RW'I\P VX$/ 1W87GSYNS(GO0P-D[K?V#+8$H06[2J;W< >F%VS6A,=
M&#0O2WT8CM/W:U<G?ML!45U;V$>?<*N#W_*),K7&8[NTDLX\N/O[(<'C>%U,
MG$@+)AHD+-;94V90?QR9_..+Y\K._0,FSRW$_",+<G(CWP_B:3!;S7^ FJ4
MU54!UE.@B4D;H\=;2,;,!9@$J";M$ ;[2, X-TD24,N?=D*B).Z6FM6"FF41
MS!EY&Q8;B)%LA^HO>XU6Q0.U.K+CM<N?ECX%!H^!ZF8#$+)@LZ-[8%A0LO%B
MF 7W^E#UO&U*D+D(-YRI04V!;O!0@K7B/H/K0]4B=D!W 0?FZ_]DMS516._H
MLI62B1,8[;LS":>JV&*-HP=5R!H*,X#YJ9P<0QR4ST]LIT*Q3,GTSIY9W2N8
M],$S#*/08#)1@0A>EM0?1 8S6UH9;URPK,.A!%?<)7 "=.UR/H&(0C8,=,P1
M)'F.^"*(6^^ A6A;RO1!DN^U"\\E_-J&GASJ1$/Y#)D(9FSZ> *)N>@: )E,
M0A[\3/CBH_QE@UBH+?$^X<T\CB+)\T+/NEX^GB<$8 USW1&^"Q9\9,DW"@J
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
MIA39F2L5WMQB<NAN;!V!7PEWDO6_+AG(O^+O(+3LSY+=3@K@S"L+\1@WUG@
M26=8-^Q2H.: ;K2>4384/D=,WR[$4QE$$B\QGA*SH&]1>R@H4/F "06/LYN0
M/4AZ?-J8C7G4Y=*6MCR$81LWQ*1IF1:!+4HM@%3H69_-FH'0/>&QC"@=(!>\
M&024O=^2&C_K9#M\4E\GA&_]\NG3^>+UD>59F/H,$*TSX0_2CF52$R"^8>PT
M',E,R+>OT'W%S TK.;'36IKEGJ]+P+H7QV,SXCV2^YG]5O8B26YF%AX3%-O&
M$E6,.T83-HI\+'/C!@R'N[C_ 5!+ P04    "  T@#57+]7-I]D^  #1\0,
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
MQ(X41N&4=(9Q($?YK,)7VVFQKW_%3 HKC%=I7M$V5[1DB@F3-MJ1N$N1*CF
MH7H2%-[AV+/"D"PAM(Y^?AP;6U[>P>2$3'U0L7=BQ6@T1%NU,@41"*0FF*I)
MULGK&$=5LO(*N85@6H) S:?@#F9VS\NI,"8+S)!*S+!KBW5T%KZ-$F.]%Q8;
MA".@MYS80&<%J_!2)PL_\M)+1>NV6@=^VKEH2RJKHG6$?"*!"-1QZL*)4?=9
MJFI3)[RAW.?"[CAIXK,]WR(<T=8^--O7MUTO37_K20L46#'L/BLJ@@KFHOYR
M!U4X07.$,7((/VE(A%CW0EYK3UH@Q\4X%4 2:9$$8L/%M0I>ILXJ5LFHA&4T
MC="J<OHM6\NJ,I92]CMO^.3_-;"9C@.X4[(\KZS32H(0J+I5A*6^FI']%=&_
MT[13TH<7(5JDC=O!;%PSIZ<WLZO=/(9KDM*%%6-E I4T0P_Z@PD4L:NU%0V?
M? BF94@9JR<VCF*9X;;!1>T=?PPHAYYIZ*1PWX:%^#AT-W#=K%NM<MKDT<).
M.MO62=D<F@6<UE@.PWB5?M:38Z>%.7-]TZ1U!DH\(@91EQH57[7(9]:@>-.[
MZD@R9*9LJ595D14!?[/033DN@^3<!SD)BSTK@A#QT0I=#%K^'4,SM9@Z!57'
M78VI?&ITC4*$'Q(]H$W@J2S#LP"?Q;25)DV2M7R[]4B:<\*F,K[)[#7Q.DP:
M<!0]>NBRAZS<[2"3WK4GOG/B>G%$@SK]1$NEN##;#%F^$)<JV&(5#P92U*B3
MQ?Q&RAKM-*&]!D\_DTZ&A]$7/5*$?B")DSGWP3Q:(E8.:-"0 ZH6Q!9+:#Y!
MD>5ZH0IO4O&@_IA1"J.#\R<<E^J'D;X#^?TKX]9[ZTFRQHX2&M-?CC:WY/')
MDZO[DJ8(13CW;DF>Q'9\CUZ23]-&:P;TK32?A;*1BN* J4_6G A%'CY)5NC>
MLLEV% $=_5S^+YW2RPGFE-7GAUA660%,KAR!Q/CG*S."!)8BFENQ%_4M1@JF
M[A!VB*,_KRU_(6Q^R0,%.9%_[614'@M("@.UJA4<^6)2$M)%:=O254S9:)"[
MK5;#Q]2]$ICY^XIMC%3Q%#-2DH@:L$"B> K9$5D\+\A[KN*5-@TMCV<D"-<P
M[7)$*V^L.^$T(6$]Z06U--X@02V_,=2)[5'L>@Y9"LA"F_\Y7:UQ\)!691 '
M7,)U$:-I\KA!PB\ONBZ"8(*=+UQ8]I+LJO&FR#*("-LHC5!PK<"!I4V?Q9B
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
MS]_Z-Z+/3:KL-YKP&;F+)5F<)@\(6PLT"<-XM4Z2Q.8!GB5_31XM['1)P:(
MU0Y0:U7,A3EI"$BP4[7 :*NE=.GF1[3)% S=OJ(2O6A1'@P$$M$^H@':I IT
M8NU#'?M0QS[483;4P4[#FF!L^0N4EO'=_>3*VM"/DJF\];T*DYT>@MJT'EMV
MPZY>4*![J!^<7V.7%/I8B7L4.]@U?!#>/P4>&88>3HY%:2L<FTI[&[W65B4/
MTVQ<*^O7;OCU#",T):XNV09'0U=9)K][.ZM'[&!QL(2Q>S[O]S*SC78E>@VA
MJS",FJN5T[N6 DD:Z+:S\L2B:;?19NJ'A'YR)S>YNW*[M/P4KO C&2)IN86(
M)^Y4 $Z^/"'S#BKP.YSWVMOG?M5(]&9XCU'L- :?8DFO0),WSN/50!%:!D6
MN'0K%<7,3W72FH/-C12@=@A=XLHB\I:,(#<CW+VCVSY8K"%8S)L"G</".H.2
M^\CP/C*\CPQ+N4:9 S2+HY V<W7]19JM,Q1/N9$_0]<L]*Z4@.(;O)Y5O.S3
M)[)FN2&ZPJX]F'V:)-<&BX,/7B_;Q0UU#T\Y6,)]@6M$!4(^S]MVQY9'HRAO
MAA(OZ_ &0P^D*:EQWUJ@M0Z#K@E9#G1 E-2 X'!O5T7$*!"\A=&Y4(K;(:W[
M&CD?> 16NX;J%+I -%4ZPJ=UAE6LNTC\#Y3^L/,'I.*$L'+*-.L'_>>M]!VG
M81B3O7V,B0.0,I"FNA< "'-5=W3;-GD&GIU;IR"#3"%^[-<KXQG+G,%1+I)R
MS#\[)>Q9]ID"_Z1%@;>X",RB!D/6?/HE->9S40M%1#.IOA_49O$LP'.4-%RG
M-61.G]9N5CL[U]2!;1WY_'YK3GIW >=A9.WE[L!Y'](2"OHNS\5T#@/-K<9K
M;"FK[XU$[##(?I3+PC,QK?V(*]>QP9UW9'.!9G@(1KH'DQ_<X0V>I07M6PMR
MG6[);3=\XCPE++M^Z-J#R@7F\OD\@GT]R#/7P-:Z$KTKX"<4TOF3K 1IKGU
M/QIZQHTPVWOU5)-VKJW-IQ[#U-81[:LZOLP^Q4RC8N3JWG848\+CE7ZOL3C"
M&E_L>>9?# /;[<1H/I(R%6+CO^5DL<!H845HT*ZU^GOL5P ]ZI#K>/.IE1D-
M+VQT!^F$U_G;:V2[^')-:SY)&Y0M;8ZTC-"O%GV9O0YK5(P\<[[M@$Z?7YV>
M84_B:!E@VA#ISB?4"Y#1TI]AB<-KBD/A;;+7'E0V??]O]6U$G UH2SX=!G;O
MB3_+1^U*"[S'WNCK48=<P3G]5GLL/'&\I&\=NOYEX*<O5LR]5&K0)"&Z=NHU
M*78OV2!*4"E10 <+FDM4B!"#6\ZZU*N05 W)TA5"0NA>Q6)?QT)+'0N)*=.U
MI,6^G,6^G,6^G$5W=[M#?)Y,\H=DDF];SR0[D8&=T#1Q.?!4.H5E%5RN4(V8
MM3%LI#1A/XP/>F<W!&45KR?(V=3MRP4\CW(!7952MT1AJQ)KXW8TY5W5B[CN
M=5:'%D"6,>Z<-3)HEY3)XK S/ VN\&R!<JM9F-.]L7FAHEP_^Q6_#\G#U<K0
MY4B7[U<-W)2*<KW770V2YY;U&)SNCLT4=WB1?3P+0CNXA4!Z/PB^1B'"#PD6
MJSSY8Q[@LYA>A:7U,"S?1KL>NFJGH\O (^\=IBT=:K(48D'Z4%@K3;5R9IK8
MD#H;UD8/<(EK/A^&4)32$;$^<>@X)=X?$_./B75/( W-#_:'Q?O#XOUA\5 J
M! SR$LB@>A] K:J PN1J7:]*5]ZY3AX(@'1)(9Y_XN0/1?=X;!J.6@Q6#;GB
M!3KIS5Z58G-LK=W(\E(.<BC.JJ^O6='DZ9L\58!6'P5IB)S!]KV=)]L0V_7<
M1/>#>;2DM^P0IEH8$A-[@OQ@Y?K)/Y-OR61P;?J%Z\41<DXM3.]HA%<()V]/
M9U(<6>6L<*"M,!SGVH,'?; *%W. 5I'!@SS@"$>/DT J, *N,_MXRC#B*3T9
MAWT89A^&V8=A3(=A+E$T]8D;B<[U9XF6QQ[XWK/G9;<!?X&,>!4I5]E+N)_<
MA\DU;,U2;Z<UY/VC(17@" >JR>+IDXW"M+%!NLTM!.%TJT0;*3-V06IFE*35
M"IOVSMG;T%9;=XK3U=H+-@BE&1"//E'RI;NF=1IT!R85N3!2.$-9Q,I8PRS1
ME:R2<JRRF9WT^\L@HF$M-TK*%1RA:^0A&OW4K!@P/(Y+;8#DQ+?_VI4JU?WD
MA?O4DR+99R3Z$IK\@+%V:1;"VC?Q_1=D1[?!-5K'V%X2#9OA8QK*]KS$4^E3
MW%)\C<Q+T"@0D0:Q$$KC1^2-R8;5VR3'';6P+K1R,.@;V#Q :0 +79 K**U\
M%'S7WJU]C?8S,OEU7/G7-'3LZ[.M:$\[^RJU 2>X#&1K7Y,/2+MYIFIFI&OZ
M.7&^Q&&4G:N 3WX!+@9E!AHF%-<0B*"M.[B>,S3U;9R$FBVOF LQB2+LWA.U
M)6O-;5#/@RGT/M6L"1H8ZM^T=- ('0(0*8VBTQ]H4MA^/()&ZB8N(>FV!6W@
M<C?W_28/_2NV<(2PMSDCJR%9,2UOZL\#O$J6NCS[1S8CI770.]^*'7IWJK9H
MMSY66W5;4DU@Z:L4C(3@2#3Q!HYVS^4D>U&K/$,&4&)]%YODODX] T9>D;;9
M+L927<#GF)!J".>R:)5@FC3 2FV1EV1I+$.I+%(J*R27,D)\^8")IYKTHD-
M1I)<8&4DE@"C,(_.7!Q&&1L7)6>P11Z,APSE-4B;@1QYUGOKWI FT1D:>G%D
M 68]9:SY@C+&S'<'T>+;I8NE068\-#8M9KVW[GR99+8$,8Z6TF:"\=3XM)CY
M[F"U!Z_1 _)C[66!ML.:RT+L;;]2AQ(LF)14HKS"P=S5'3TNCFSF7*%W>97
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
M=O#CW1HG0>S?9%Z2Z<O^@"/\8R\$MX23R3N$B ]&6%.9D,\B7U_$ARHB?GY
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
M)T$3QVN(4#E<7#1&:GBNK9&D6]EE0NL2RW-4-+'1).P0( U6%%%2FBY%NVE
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
MP8@ *,57$X&'0$4<>/"&9P@/ZLHZ6ZW#>(OQ-8L&5*R:<>"BV*D+-X8::P)
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
M\HZFK/H$[!K4&WVOXB0+?H-'!M/LV$N#H?U:VMV[6-EUF11%\HH/T9Q\Z=2
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
M+W#C+XOS/7</?<]L9^<'[7&@-XAEVR'WP0]P9)K?Q4XP="#;!$S0]+S.5Y/
MTT%?&T_&4JK%4V/C.7O"R3Q(\16$NFPO[@-R/D&/RW"C4S7EBD:(MN+,W"E.
MW.'AJS6A!]:2P>W>8=><A@%9G]+\^Z2C]F^UG,VH0QGB0.70,K,&M?*R[.C*
M&#-AH&M=**;^L]Q8]9AWY2^Q-D+3_;7X]S/?88V@/.@FJZ\MH\(+X(Z]2-,-
M]D]I5(GUQ4X^%5]MJ5:5S5.;INT"#;H,#K'-<2:&]<OZQMHN]R\CR;GRU9W'
MR0('&=RUADI?3^L@?P1ABOO3J&.9XG8UYH!-=Z^\4\C32:#\4I \=R?/('-@
M2'=0?[T:[7.#<<UGVL*9LI,%NR_2CSV<(?9<^71^9@=-50@.==944I#MM->Z
M<0QY XI1P\GDP_88P3,,TAL,<Q!CFP:4G0?[W"!\R/"\J?Y<F?R5=((+PE80
MI<%\4GFUG7P^GZME74,1E4VZOT_P/;R.6G[.'JEO3=OG:&]W G!(6UHN>A=W
MQXK;XCB%E8+:#2Q#/X9?5?AE4?:)S4IEMI_=)%4=68\,&]9%;FFSRR[DKP_D
MM\[W88M('G)Z:REMTK/]&3G:>@[&>OJZT^&:^MD4UHKG=FEET+E@=Q51\KBY
MR<;79OZYG/\'')BSY-Y)#'\(=X':<O0,O0C#3Y\AG0L#@\!^[2GE<91GWDD[
M)<S'\:]G]0A&JN_3F/;:XA+U=HT<F4)'S$17R_(!_^HD/2)M_I[;5&^-H(>+
MHT+K>6<%"&$WY)SD2][=7!.L$>(0QS-T4Z@.YKG-XG[#[9G,VICOSW+&#P-^
M"UNVCDJ']DNPE7^VR99Q D\C?HE\G%32&J'.>EICXQH&6V$Y']ND*@?8']5D
M$A6L#WW 3.':JC,9WX.S*=+M>'"C;%>9#MW+Y[-V.BB,XU_/AAG,Z2 P7/XE
M[1;W7@9%#0[QGN'G.'J@3% ^+=?T4NK<7?TN%?84:G6=+ $-*0HB1"CNY_Z[
M:@6OR3Q=J(,&?I$N99FY.[8_TP*:YF4RG]6F-DPIS,(LI@T0M$#T;2_:!KV
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
ML61LF(5S&V10TO(B\H.'P-]XX8]!MKS&(4N@)E/Y-CZ+,DC<'BHW1[='&S/
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
MUKR0'$H?XI#H;0\151%ZZ092N2FW# +0H&"+%>*CGP3%39<O-TR4E)F*L&C
M.R&46!9W(8($W\/,2S?S)00,SCZ=S="+LPV\Y OQ8M\/B2'MI>3CV2(A0WGI
M<MOIAFQS\JF"W+J-?$&Y"1YPY>#6M5#F+8HGG')GE_NM23P63D*F=-2V;>'=
M"R+%*MVE@_()E?)!K;;\K8N?/XBV\&6#M3X#RLR,=#9?!O@!^W+9?XD"LNR>
M8HB PYU-][@7C: I>/E(K0O^<UQ< <2G ;',R;DTE8O^,R2.%GCWBS;ND2\>
M25,%76.VGO4=1W\C$Y%NS96UL%L/^[\6S1HQCY8R[.M",B*./CK'[^!(>/L8
MWR[C#53^O8$@0??QY7-^7LEKZ 39EE,"@)BG9=3%[4TF\0!;SL8.4=B>,4U^
M,JRBGJ.#P_?YR[S.MPOY"+KDSQNO@QE2NM9N+J^8:TW]>%]/3=X4GD7I4;_E
M<G3E<&R,5^ARY,K%O@L>C*725NIM6-F7>IO]ML1%0[1<X[Q9%B<E/Q2_RR^O
MU"+PD9^744GI';3.XB2$')KE+@+XN?Q#3GRO_IP6N 2*#O80[<*1)@<24%7Q
M@\K<[B/T-^"FH2: %YYXZ?(\C!\KJ^/L+J4^<6&^=Z4Y@O8("*#J^OIS0<-Y
MW7S%L?(TJR4F@S=DJIG%172HR8_L13Y9<VOO\$F8$+V^5^007RX0-$*L%2J:
M.<OS5% '+RF<.VS+"W_?#*L?:*HMR^FC!3YN8_A5GK]!<]OO[Q-\[V7X BKT
M1&DPE\8,:6^\)Q8K/$&0I?I=SA>BC.T57L4]],,N+;A@#ZPV^/4>JK"XATHF
M4<DEHFPZ7X5<Z8>[KKD%B^6I<1%!'CF,0?%:XZ[!'F)-T,_Y?Z$MHHU=F:2=
MH^(IO$,$5E^C*Z[+ )+(SR'.C:+9"BYV_D9_KWK_M$)J#Y7$]NA*4:77H3\G
M=JBV%/BVIZ$P+<]!<>!Y=TB]H#^+=%W&./*(4WDRIQZ5%]#TY5YA2>25SEPO
M^NJCYNE65V8V'VS_C#,PB*^2^"'PL7^\_9)":=RR*-0,:DK1^I5=9PDH2$N/
M$ 4M, I> #FBQ9>HI(AV)/F'"P?ZU9<"3\^FLK2Z:K.3;9<RV5=<_3A03YUG
MGNAYHQKX(@%/J#X._CG;^ $Y%8+/7BA-]@F";UPM90U6JT+DCL+&(@0=G]'Z
M$#_B,/QK%#]&-]A+XXA,&TA)%[JQ6",$K?:_0C-4M$.LH2.;KG- 3;$KC-[*
MZK#CY3P(L?PF:"Y\^!"Q+UV<\WD<\Z7;')%=9-^LO# \WJ1!A%-AB?!<I/1;
M5'SL9,D5,,Z7+&=L=O>RD+KDL,\_!^<^6Q7'1NFPV!V=]PI7N./SH=H@N9NB
MAG@LNZU-_19E%6"RX6]6S(D!>7?G"08/!2:,9K+K( ,XLX %YHI"%2;V6(HG
M\($*1NBSLTX-I]'E/*A32D^Y-D]).[=+>A)Z:4I33(ZWE?NKG^ E>K(DGA+^
MU(IP5&BB'5$ 7X4L*NBB4_J$,27-=7XX]5SI2T7NW#*5LM7=YSR(@@Q#[1AR
MR,N(:H.R< PY"8K4SEKMTV9HUZX,QI*F+G4J'Q1/:RIBL*J7XA;OC%WBK=?S
MJ]38(.M/,!<]J59>!<ZIH%W]D]PU=5DM?T)IN?5A: V;IT@#N5G5*PVRPY:2
MX"54\2Q*G<--,"^$>V!_CD-@\'LOB*"8^24Y3\UAO0"/2Q) ,<OJ'6>H?;ZX
M]9Y$,_7RY )\T7<9VI'9(WCP@A"6GOU%G.S?>!"LVG& <A80\(!> !<OR[O#
M,_^731&.\!9D/X/,"Y>3?2R)\M UKO;LFJ^?X+I-\2X,^''SJK*5X@CP6Y7W
M9VJDJ M\#^74]E"%WAYSCU=)ND2.@01XH# 6I.V@/%RBNB6D/T+%[[S>H_",
M 1_O R.(?EX6Q'1[%. -@6N^B\=J6>JT-#[VBTKY)YL$WJT0.EG9UZCX? _E
M#=QNR_Q!<(_KDN':/.RTBT%\CN'=D*+<3>?)AC4BAY5I'%.4Q\.=#7K"L#1#
M('').SHX.NJ*X]"/VOE8=J="B]MF#A9G*!:"-X6*(68WBWSX#VCX@:Q_Y 0Z
MR^A;.,3>D&9'T8@G9"G0'RKMB8D'\5!&HIFZY& 6*(V2-P,TQ&-SE6HEZ](B
M$%IYS[3%U-*8*5/\#!'Q@&V%-#[&<R^\6L911XB(?H?HAXY#1$V.FX$,_HCL
M^A:;3P/EA>33*V\+!\WN=W=.J^_N%*U1WMRM^=,Y.KXC4$DD=@Y].%5YR?V(
MMS?4'K:G\8'*FQRDH<N*(T,_97_D)%'ZKCO,<"?(??T<1ZPL<;T@*O;KCB\;
M:=$E*V7]A9*9O9;CT74NG"6Y"R-+ME3N("(ZQ- :7EQ:<!7");7W4WD>[\$
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
M]B<= >&=Z$B(LY432>9OBN5R^ J8)AUDA51:V)G^P)H6'$TRTJD@NP@@S64
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
MO#SEFU'<Z)D?DKWK2<8QM6<C=';L^R_,V/ NC!4%;O4FL*6+2MJ7^YJ= \)
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
MN6G+,8*[>+&=G'Z^L5'_YJ37]%?8^;Y]8FK5?Y_TM3\*<>F^FMP0>$P1.DV
MQY\GY&@T "0N]]1 H+FMBGSS%HQ*D!W)[Z(]L84C))CZ(#^VJ8P4 EZ\^0TO
M9)&_4L.FY(\WUSUZ>1VI,X7<?%@4("_'F"^'X,YNIA;&'3B@U-]OZWQSD*^Q
M.:@(\LCSJ%H1/K!%!):A3<.L(_X$"P$7P6Z@]$2>_38\ GD-^*Z#1>B $==!
ME%20[FE U;K9[&I9H_:\;6G3\F7H0ZZ]N;B^(ZK^KM%G &2+#"'FYL.<A1B.
M<7.///@^ 8-@$!#)8@Y,E&P49M*V5>*%@ZS70IH*#([M8UINWB3>UGE[D=7U
M&_O1&^8#G8G1.RGRV"2.K.%<\:+ -A'>T>U^ UO[I@2$_3O:[ L8)Q25"#LZ
MI&%0$P$3(9 AF@X!0@MP@\1SZS(,QDL*-Q[/<)0]OU0EZ$3KG8[P[H-JW8.[
M(*A<:)<B+Y&CB,)_&8'P(S R\CNGOAR]XP#)6%710P6-:,&"*-$74(4#H?.Z
MW3A /HVJ.!BW53>T\H9\N7&'U&U=2: Z:YE/'HPNVB06JS%:FT1'S" +4S[;
MH(IY#C5\RVUC)$\[:T')7G NK>MM7F;U&]$$%(*L,,:D?DC[.;3-28Q,#D1R
M83<8K5_YRUK#U%Y7]?6^W=<40JPRQM>LD)IIE)$B.&8.+R+L1M'32TY8XAE)
M(F@21=0*\I(L&F?6 A@'Z$P7)YX9]Y;68-7,'MDX.2*\UPG82"]@$^M,[<C#
M.N ?(&$':Z,]K(W/Q8J],(XDJ^%".>H48)H=I$_"&<^O_I[T3:H&X7&J-.:E
MCHJR!(IR39^@1.4K%9JRQ(F5:C(@VC2?:/NES)ZKNE5):?!>/J_SABT!,\B7
M-61+R)TO* )2>A_M%TE8$87-JVH;P0!6/$U0-B'RN\,BW]FN%<$NB56Y4\K5
MMH9./X^86SJ45S<MUS"U5AGBQFJ*BI( EA7JHN).QYH;E^_RY@]U-RA+IO/P
M[?4DT-6X>'7OA&I6F+7A11DK#%3STOM]7G"\D'*K_GG##H/J57C?_*"9J@??
M,_H_S/[CHN\)]E$4C[;--$$XB4ZY@'?$#UN8^E#S>#W2 Q)^^7Q-MP#' %A*
M>PCXU:9 5:K6=F[I;D3W,ZVJ@_K!R&=6@*?A@14E NR \Z;E>^^FA"!X7A*[
M_H.V8(X5%YP!C%!N+VC=,CWEOL[X-FX:VC:3<&'T]R"J@R<?B'KDZIL*E:#[
M*GD'+>2'B?PR$9_^(0)>)E7T^RGD:MO9IYU#W$>0%XS+Q(=4;^ [^L*^_Y0U
M=%U?@-FD*#)5*6,6XEG?#*I-$6U%ND]!@K#YL26CH$T1FFUU'7E&\*Z;J]V.
MC4<_O^01"_&2Y89=A$)G9+]<YJPAW(=Y5JQ+>&FI<A+<"0T.YX=,[ ;;]:0_
M,[R42/]3XC?S8V1=$O8YTM4G%#Y\]<54KM\C"VYX!YYD7G S[_B)&5 41:.E
MZ(B](=NVN84GO,KFE]5FSZN!:]OE-?O%F?>FFILV8,)[I-@R'@:&(6)>/A&=
MW38'&:":.@5N]Q&N.*YKXI7MXL6VR/U\XY94%3N-799@_2L?^8/ N>*O9&55
M6>I.]Q)/HF3+WL?*<.V'V4;R:GXIV;XKZ?;J\_I6:#'^+ 75GG0=4J<HN%@8
M/3>]K*+>F1JV:KTS "Z:MN8'8B/"E9VE9#2D&.CI)MB')A 5S)W@>(KBVW96
M31!8TJH& EEF2@F#%1%]DGH!'7S89L++,N[S^)(RE;BF6Z8T&_:\VQHJX+5O
MX%."Q[^.]W)C/@@R_*W2LV@J4BONYVNUZX:32QN<.)%WZ_T_1WP8NZN[(*^>
M:?T(R+5U];5] C=B5H8*KJL^1'0BLE<BQ2S BUTO\+"]" .41+X?@<*[E(9Y
MP/I)3\2)G$^P%?F%AWE[?=R7^29_R8KW%7L%^%UQNBWAC<=^MT0/'AL/MLEP
M\YHHVMZ>=6@BT(&^(](5V0W[+'Z;'H#OR2WMU8];$?T]8GQPP5'YQY"@;:F<
M8HZ0@6E]((>J@)01>N-<1WR!"$+#@":EO>K*6V9(U&)Q(BW,6Y? + 'B3O)%
MU;00/,MC]-POCH:7')+-DN<H&D.V/RY&/.$*]5,&0<?KG;2NL]WLDJQHR9,'
M=%N'SS6!I,=\V,3MXA;/UBU3A*_S^OG&^6Q6:=#0BMQ<IE(Y1N,=*N\69A#-
MV.>;3;4OV^:.;FC^"G?0)]J&W#*R#^DZJ5#5\Z*HOO*< \"%OF#O1':VB\)Z
M%B=.$B^.AV&K4R<H(-RSIHM4$+Z_FY+)G?W"'MW*-!\.')%^UA51O;F10O5/
M#7D88,\?OQ&0"JK>WOE*(AU#2W(%!?T_IM,'\[*E<H[A6($!_&R[9VG;#\('
M-(PZ?]B+^*BV8J^:!;B4>[Q8[]HQLWC1'^Q*:MJX.O70TEFF'E>V]I$/W3HN
MWE+4A*/-;99[3FT5$D,; @T74O5-C-I^&%L8.S!MU T[/"M7-((<WCZ;,JR(
MQ%!-A.>" ADS$-26"YHN&31^6L<9H)'"0D60TX-3SWUA]OE:TKIYRE_@U0^.
MY"Y2M F#;BE3B32\*5JBKOP[(&=&\"[9]C9=*'Y+VUPAHRJ!7S[? Y++OGY[
MGQ=%MTC]-^J7ST1U(]#/W,)C*WJ"6?6S99NW&$'@%Y6;@^2JDH8[-TP(W^_4
ME;EZGK )^(Y+A'<\CM2M)P?FA&.;!01>U*4&DC>TL,YV$035>J<(_ "Y)3W=
MLZ.2UD 0Q:A#+XV7$5(DW?U37F^CWEB\Y8+>6..1#U4U%V^H0:*W^X<BWUP7
M5>:&LA<A(*(EX4W3:$S64=N#/49L8;N1GI]SD2\%R5 :91#*P,1GLAE4N &R
M1R<F*RU5U%L\ZW9_U73A(8%CB8C7O&TN:9&SJXUN0X&]K"W1C2W'$GI8[WCP
MPW/)S2 R!-GY]I][F74(.5\B>X?V;'[W%=A9;^L*K*[;]V]?F&9R4^HTGG/(
M AJ]>:U.F^Y;(A%/?HV,3:7LS_!1HKX*2N@[^#!3"7XP4JVZCR^G],<I1&IU
M"YULZM"!R<:E[L:Q*-;W2Z@&X- .L<Q:@.[0GCEBPKV&O04O@]=OJ/:GX]9-
ML*OC^+3MTRD22E '_(#'Z'55[V@.H1B@15Q]>\EE-,:IBT_$VB2, 8H8^&Z(
MLZI1?(>VBH/FZ!06C",L&F6BDQ/S@0U1:DWL%_8?4/H<9NM_ %!+ P04
M"  T@#57!T5\7 =   #_, 0 %    &5S<"TR,#(S,#8S,%]P<F4N>&UL[7UK
M=^,VDNCW_17>OE_N/7MZW(]TDLZ9S![YE2CCMCR6NGN2/7MR: JRF*9(!21M
M*[_^ GQ(?( D !98I-L?=L=QFU6%>J%0*%3]_;\?-^[1/:&!XWL_OGC]MU<O
MCHAG^TO'N_OQQ<?YR\G\=#I]\=__.#KZC[__Y\N71S\1CU K),NCV]W1J;_9
MSFWG:$$M+UCY='/T?\/-_SMZ>;0.P^T/Q\</#P]_L]G?!+9#2>!'U"8!_\71
MRY<,8 ;RE!(.\(>CQ3HZFI/MT9O71Z^_^>'=FQ]>?7/T<7%Z].;5F[?))__Q
M=]?QOMQ: 3EB='O!CR]RF!YOJ?LWG]X=OWGUZNUQ]H<ODK_\X9'_HO#W#V_C
MOW[]_OW[X_A?]W\:.*(_9&!?'__[P^7<7I.-]=+Q@M#R;(X@<'X(XE]>^K85
MQIQLI>NH]B_X?[W,_NPE_]7+UV]>OGW]M\=@^2+AV]'1WZGODANR.HHI_R'<
M;<F/+P)GLW4Y0?'OUI2L?GQ!@NU+SL!7W[Y]Q2'\'_:+W^GOI[X7^*ZSY)P_
ML5R^D/F:D/#%$0?\\6:Z7P+[>[+C4COF_W)<^^'Q/TS2]?NU18D7KDGHV)8;
M:)-9A@-/]929SX;,0_;SAF%2HK3\[?$_0(0]7[-%KWUWR>S\_,_("7<+!N*-
M3]^V4M?PZ7&LBV;I4Q6[/"0XZO,"/+6"]87K/RA)??]13!, 15=6&%'BKV9;
M[JN9/VIGG."38RA?,X\V&XON_-7<N?.<%>._%TYLVX^\D&TSUXP-MD,D9"L'
M!HSL&W)/O(BTTI7]'9"Q3KU[$H3<_.?$CJ@3RO!&^!&4.C%=#:EEAX'C75.?
M[>%2[K?\"9A<&$"FI.'NFGEUM@,ON9UOI5QM_9=0K+HF'H^DSA^W[(=VU2G]
M.<QFQ%9Y[W"P+")+-I2%]2BA0W7?P?F!@]V>1D'($% )JQ=]!"6N<_:7_HZP
M'=>WO\P>6&@;K)TM5X]6NAH^!=P8.? 3%@8N>:C-="1VS>T\$W\&Y*"8;=N$
MFS<'ZJ]8^+YTPALG^"+C%6J^A!+H#7'YCLKV>BFW6?ISJ&!PLW%B7QPP'\,]
M(=N>V*%*AJ"F;Z&"0:X<A1!)3I^*GX YA4O'(YDJM!)2^&,@?OPK8M(GU-U=
M.!X[)CB6.^4><!,KZ4?/BA@NLFPE31(,&-^JD<_)+OZI79P-GP*Z+JEH;6'=
MNF"A7PH,QHI%$94DM0V?@IXZ2A&6)'6U'X)%'^(82Y*\MN_A.%@3[\C3V? U
M#"_K8PQ)(EL!0.XIE8!#UKB;/H8+/BM[F IYH@]A9"RW;TC2J@0,AGZ>#5U&
M+MN6PS4Y#T)GPR.JCP%91>ZEPQRAOSHC6TH8,0SK) A(F!A).^.U(4-I]9Z
MR;WEN!PT8^;<<DG)KRLLI0T2X :\QYEY_,AR/_ TCQ;A#4!,TES:I30(+D.
M\RA[5,U[E@+-+8"@3DEY)FVVOL>/&[&5-6UJ2JR7AVI '.>K%;%#YB'VR&Z8
MYU!>12,8 V2?D16AE+OGQ\29,06X9+[-<;4,5@J<"=,]G\^NXSR\.L=+7\+K
M^V?BW*W9+C*Y)]2ZXYM&M-G&Z6ZFF[/XI\F#19?*I"L"-L'W),A+4'&]S2(5
MA574@H".%4[7EG='F&N^\KU/[+!$ECG4ZOY& AJ\+MV0@-#[.&K=^%ZBMTS8
M%Q&_29DR!>"7CJI+40 *'N7<$-MG0:/KI/DYYKJOH@V_#_(I]QYGQ/,W++#D
M_QG_*PO:^5%\>>:X$6/ZN44]=AP/K@F-">?;0!1:6B(U3PLX^QJ#;]7U2P #
MLDFIU,H9"5G<"I6HR:#!97WC&SA9(DM_;CCO(4M5*P @A2W>.4E3)_P*<!L3
M7/-(*UW#MT!,JT^DR!+9#@$VU5%)J$ASL_%KL'H9\460+)&M ,#NNFKO8^1)
M;04!Y,DKB2HED0N_A/+0^8L;6:I$WW3EU)EO1UP4$^9?F2#"76Y7;26H\>,]
MI[8L8F-_%/^6+>%+@4CR&!)OR:^3DM]RN,J5=BDFALOU[0)XE]<?^C2#[EJW
MQ/WQ112\O+.L[>_[NK+9:A]57/N!$X?[MT&<+2GRCQ,6,,KB L65%=S&58HI
MO&/.V6/BAD'VFYC7,9^54"9"55Y.<JHU1'@)>.I.2N*=T"*]%K4S,MB/!=E6
MRSS3OSC>QG5I+^VUX^[58D7]C9[<0K^>03YE!O[CBU>\R)<M(TD/7"9,K24S
MII%%H@&)__*P2RG+BY>Y,=/A_\.=S+WE<I\X"4\M2G?,)WZRW(@ BU$.Y_'!
MHA#$*];CO" E.0<H7SV#S'+;%^7<]AFY+52SP9JJ+-J\Z@Y2SO(,3$7]NKNH
MM02=G.@"=D@G3!L9P5>$A=Z4QD5XL,)M0E70U6%*M)%3J13?=)6BC@QSB?@#
M<<#"$^/8$SQ(B=7P)175VY[W3EY*XK%?,Z,7!SK">%OTU7!M1;C&E-_?(,4J
M&4V[&^OA XN^J!._/@"V#A$.#.MHT+*B:0B9 A5V=)+39Y]^F1[*T\T(JH@$
M)VI4E56),6"!0R=IL?CFTO?N%H1N]M?T,\J(O*/6QICX6K"BG/%4Q=G&.:B0
MHJO?O"+0D6 !-.Z)35&/A8*,&=3!=?JAY78^L5U3LK6<99K59T?,6;@F--FJ
MS<3S,A@'?TZ38ELJVW=(1S2#,A1)"T]<"CI<38Z5I=7=$O7,,'?U-\E=_<%[
MT494V**4L;PF3J5"_!8C$DUH-V)IJ"=F&=VLVA7DUJ8CC5RA&Z.Y>K]EZ-9
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
M"5@/7!V/<9@NS5I1;5_8-*BCTQE: $;]:H7GPVS_SHO3K3Q!ED$7.&8A72T
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
M.LB$SF53F88L-U$?B^[SM(3>.S81D[JP'M-RD@O&DQYKN[H1-42WT*@Q4,)
M2H8H+>/*]^Y)P*PC3F,'"S^TW/R_\U*(*S_\E82')IKYVS@,E>M,\^"2"MW5
ML;L<!W.9![W,I"SOPJ>Y1K&OQZ*W8N*?IDL%%"[2 +BS%--A<T@KRA;^1X_N
MB2XO2J:N3AOT:'1%GWE@UZE&JKCJRH6N(G[VFJV2@N%)%*Y]6NWL;;Z$2YF^
M<6V?!N0#-0E/U;T4*9I'MW\0.USXR18^HS'5<\>[<\F%$]B6RX?WR=Q#ZH =
MAQ+H<0QLL)[:G+7<H+]X[VLD/DBI#S0$#H5I-%L+&&M3S?AN7#M-_/\^L=!J
M_T@%.OX%)6T<KL6,5%(%^Q[K% :U6]XSOO'4*XO,?V+?0K_<,4;F^/*;YB26
MZN)[@&$XBH^1=)>4[NM1&/ A,LRNDC5*;(G@*'&ZFBEK$3RKLZPG3B*]XWH"
MIOTKXH2\:P8?#O6X=9*6;\'42WST4!R9-+T#+'LPX\_D)9BI*%:WWLW&]V(&
MG?$B/N(M T99O*@S8KOL?Z"U3 KEN,(N.2YFDNZ<U<;P1>>/[-CB!&2ON?'1
M9<HG87B!8W^R7/@>CWV0/)IC8[^"S'1U/*/I"DU1_=4I(]<)>7-4O?DF&;LY
M!.Z[/S+HE 'R0H>8:@'0C$O5Q;<Q1/:-OQR<+GU\!4 K)M"!P$OL02E*NE1I
M\%LO.JRW_%_SU!0EJQK#Z)0%M9:DI_[PS;B&UB2^Z2UK"]>PATP^#^& MM7G
M21S/DSC$!^XA*[1"F/4\R,&\?(0'.W/3',J9[T[RR3+T^R$'.C*J L&ZXX 1
ME8 I(QO@P%-73ABW$K*\>/:IX]TQQ\I.)EW;Z^5 3\J@>QCOKH!;_5:HG6WR
MQVLY2!H10SMHM6.V/#3<CGI:BI?8MZ14$<]KEWX0%"@[V5U98=H],/OUSD"0
MKX 8*]Q7LLE\I*C"5*RLRYS?;=[N+DG(-XI9NF69"?^;4&$/RE0W@&*CW"8N
M@D_.&K;Z*VT0B$?>HLAW$]NFO ])>&I1NF._-''[)(=SJ)ZN\0I)DIU0QM!?
MA^BU[S*2@_,_(]Y0*1>^ZG<N+X"\\D-3 6L+,OV7=Q,FYZ7C1G';1&)'U.&W
M#N>/MALQUF;O!:-$!+/5N44]I@+[Z^O)AJ<X@1<+0Q-JOEA..0IO?V$$@3OF
MHZG2X=0*UM>6TV>]R!XE9FI2717DN*@?:%9*'O6ZXZ>4<8J 95J$C1U1J@NP
MQ!O(/F?FMTH>&V09K\XC%,AM:#R94X-$V8D)%BZ;I:G]5".J%<!2R<,T?HX\
MRJ!1&[@!U8L ZUC]R:(.IX"/5#*0-:F Q]BIVA0_[]JJ_ "03%?!&&GZ)4"
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
M'HCC,&R=3[F*OUUC^XIJZIMR>776-^P?4$L#!!0    ( #2 -5>]B9E5NP<
M +XB   *    97@S,2TQ+FAT;>U:;4\;N1;^'BG_P3?2[5(I(6]E[UV2(E&2
M;M&R@-IHK_:C,^,07V;LJ>U)R/[Z?8X]DPP0MBE0K506),+X];P\?LXYXPP_
M3'X].ZK7AA_&QR-\,OH93DXG9^.C83M\HK=== _?78Q^9Y\FOY^-WS9F6KE#
MUNUDCDUD*BP[%TOV4:=<-4-#DWT21LX:F(BIEU\[;\!2;JZD.F2= 7/BQK5X
M(J_P& GEA&D<#=]?G$_*5?T 9[BR,VW20Y9GF3 1MZ)Q-+Z9RZETPS:-AS#]
M[GYWV+Y\NEC^M[??.Y!JFX1%FU2QH*5;863CZ$08)V<RXDYJQ?2,N;FHUT[F
M4LS8^$9$N9,+P2YF&"+,WRGH96YLSI5C3K./>2)LO=;M\U;WS1Y_S;B*6?<@
M+IYRS#6D"/:.<B.=A&#CFVC.U95@QY$C/;L_]=\T_TZ%N&4\UID3,<L*W>HU
M* >9O2_ZG5[A#_:)FRE7PK8N;A*Q*C7H=3J]9U%@.Z)?J:G-!L^RP3,O=MID
M([Z0,;MX9>SG7 _.A4R:$)R@O(+%N#O\-G)/CM^=C=G)^.SL\G@T.CW_^6VC
MT_#/GRZ/3\KG_YV.)A_>-KJ=SK\;C]V]Y73F75,\3K5S&E3R)G,@F\G'<MT%
M*1WQI/0>IA''#2>C<L12QF[NE0&)CHZV]!2 [.[?'5"%Q?]S2]:%]=F<@Q*,
M6$BQ!'C=7 +)2N4\06.F#<"IV'L0']1M_4)('=L,L/UU=K7/7O$T&[!Q I ;
MK61DV8DV9&':N3WY2'_(R"_ WKW=[/T.<2,FDZ8K=JWT,A'QE6@&LQ?VCC44
M5-JQ"%ISJ>".%5C0F5PPZ[@3*<XT.8)#/1QN"5?-.+&(83J5Q*GUFA]X;X02
MD;"6FQ7Q;LJOA2>D]:(6;3&DP9X0>^Y*QHJDB?(4PQ2F%X2\G,MHSFQ.?S;S
ME\*(8A%H4*^ETB:"QU)=L:5T<Z@(\$2>]FEA!%*I8R@*1\ LTU75$"\21OTG
MPDBPF53P$[E\XY>FCZD:W:;2+Q4E-"%7D"I*\AAKPO<5'S3KM1F7)EFQ#*XC
MW!$>DV2#J\*C]L[>P&XL:>4FC<@3# "8-!SN][->("11<S9+]-*62#/B2EK*
MM1SCU!@$AY@09 ,86TIS3]X7B9DWNV%F<LN^1;"U!2J*<$L'58?TT%O^E'$C
MO(_A,SE-!/F""2!KFD@[I^$T+ 5-$57AN5Z+I8T2;7-,) 8S.@G>SHR.1(QF
MR_;@W%@ +<&!M[(YGPXRGPT>[(DR&]R+7X?GT" IJU$!9[0#(P:IP"^@P8NS
M\UZS.WO-L!=I>Q>7&$,Q\_#[@UKWOW[F=K3U>OL'U(V<?">XC81% XSN8\27
M0=&D^!7QW.X^Q4>ZJ8![BZU":-*YP0J@BH6TGH$0;83R"U$VN>&N*@$:D7 "
M3!F:*AZ7(2YZHE74GUL*5?[@6!_7I")ZTE9@'^<KE";+.%D]3SBQ)\3U:V]B
M'J 80F@U].._J:"!X#?,%_%WR&>[@6SZ&)#MS KWL/:%F?7:>BKY?S?( :<H
M:PA)W&K%B3RY!0HIBR)X<1.7F #X))_*1+H51<(M$GOD^VH^0&-=X6\+]X&D
M;PJ54(]F@*;UH3N*M(F]!#X?NQ(*$3D!0M$C?/E*0Y!M!A0B+9 9./+%XC#:
M#8?C!4]R[GP!!1*8S:CL7\"X=DMJLPZ].S!<>"R2G7KM=K;C88>92-UL2*JF
M.G</B[ +"?/U:$$IXVQ+G@[.O96HLVF9C?JS)((M(-" 5G^IR(EW9+#@DWN9
MK*_ZBE3%]VQ%T%?D03[TZ2C*#95:E8"T9=E46X=V>GF$Q2R,PC[GB&=8>^_V
ME!^(;'(#*KDSKI"9WI/Z6E45;Q5**GT=8O&<VW4\)A;RL!6Q)VAOBX([5ZA(
MKT52%*YWQC<?:9X*K7^G4.W\!5(#C ^^9?'@WRW%)<*;&Z(@XJJ";,,9]1K0
M\A6!_%ZZMI:-YZA M;%EZ P-6#)-I7/"PW++M*E&8$8?%3*0SJ^P!S2" RUQ
M+#XI:RQ/C_B<2PCO3TJN_,M>^_J?VN"OT72<(%U!D[^K@.6H/HND@'.+D+=.
MT9>"7U,("^F+#V(^\_(ON\JW">PAR-1KVU*ID'>'PG8+O? 8,ZU8L\N#^"H2
M-DP!3I!6-4,@M?"%S5,87OXAO#9AZZHPE<KC.V6>9TWSCQ$+9P;GMPGG"<\Y
M\#^](RV!T@SA1*J%3A:"8HKB5\6;4E/0E$BS1*\$>I=S';B)5V&(<*"39XFV
M^P_X\XD74W &Z^S[=S[/>@4S@A$/T8[\/YU"HUZWR7J=7O];7[M407P7Y%^]
M88D[G((!2-R@+&M%.DEX9J%<^5_#7T5_&=#AMGJTEGTRVC3> 7-_W]\5%EN6
M!^==PJ-KUH7<5B<R;ARU;?O^/=<&)T\7Z^@;+W^)^D#2M:?GM <OE6_MN ;_
M\T+H7ZT6>R]%$A^R2QSS 69\SA$^X.CN@%UD/@H?TLK%_>N _88$ ]W]_[!6
MJU1J=/I;*565!7_,W#T>]&U;7=S;N'BCY+:+XT=2\A9A0E97,4*I_H!-5AFT
M/#8(3M& G?-4!!.=:]*[_V-U5KN<1ET;"P_;L,OC3%0UP2/\3 L\($=5;-(G
M>/')N%HCJDW?/PE?2*'OK?P)4$L#!!0    ( #2 -5=057_.CP<  (PB   *
M    97@S,2TR+FAT;>U::V_;.!;];L#_@6-@.RD@QZ]F'K$;(*W=;3"9)&B,
M&<Q'6J)M;B12)2D[WE\_YU*2K3C.U$T38-%L/L06GY?W'IUSK^3!Q_'OYR?U
MVN#CZ'2(3T9_@_'9^'QT,FCEG^AM%=V#=Y?#O]CU^*_ST=O&5"MWS#KMU+&Q
M3(1E%V+)/NF$JR!O"-BU,'+:P$1,O?K:>7V6<#.3ZIBU^\R)6]?DL9SA,A3*
M"=,X>:4F-NT/6E?/M<'@P^7%N%S5#W"&*SO5)CEF69H*$W(K&B>CV[F<2#=H
MT7@8T^L<=I_1K/?".#F5(7=2*Z:GS,T%NS)2A3+E,?L@%<=7?+N<8I0PSVC*
M569LQI5C3K-/68R5.CW>[+PYX*\95Q'K'$7%5:8B8<C2>NU:A)F13F+TZ#:<
M<S43[#1T=)+.K[TWP3/:RRWCD4Z=B%A:,1T6>5_VVMW2G]?<3+@2MGEY&XM5
MO588V&VWGR:T3PK?)U[L+&"_<0= <7:=<D!>!_ @@6X%WW!W_#Q&CT_?G8_8
M^]'Y^=7I<'AV\>^WC7;#7U]?G;XOK_\\&XX_OFUTVNU_-1Z[>]/IU&.DN)QH
MYS3NZ3>IPUT__E2NNZ!#ASPN881IQ&:#\; <L921F_O#@"Z')SMZ#KM'4C5.
M.H?; ZKX_$]FR;MP/9OSA6!&+*18 J5N+@%9I3+<SD:DV@"%BGT  ^&XS=\(
MDB.;BA7[?3H[9*]XDO;9* :<C58RM.R]-N1AVKDU_D3_R,DOP-_=_?S]#@0>
MD4N3%;M1>AF+:":"W.V%OR.- RKM6(A3<ZD0CA7HS)E,,.NX$PG(A0+!<3RP
M##'OE!-=&*832013K_F!]T8H$0IKN5D1"27\1GCJ62]JT1;!&NP)L^>NY*90
MFC!+,$QA>L&LR[D,Y\QF]&\S?RF,*!;!">JU1-I8\$BJ&5M*-\<1 9[0<R M
M#$63.L)!$0BX9;*J.N)%PJCWC3 2;+J6XTU< B^.&MVFTB\591:YJD/,XRS"
MFHA])09!O3;ETL0KEB)TA#O"8QQO<%5$U&[M#>Q&DE8.:$068P# I!%POY_U
M!B&;F;-IK)>V1)H1,VDIZ7&,4V-N.,R$(1O V-*:>_:^2,R\V0\SXSO^?67L
MYTSW;8&*0F[I1M5Y%N<]?\:X$3[&B)F<Q()BP020-8FEG=-P&I: IHBJ<%VO
M1=*&L;89)A*#&1WGT4Z-#D6$9LL.$-Q( "UY .]D996T[NA E&G=0?0ZO\X;
M)*57*L<9[<"(02KPR]'@S=E[K^G67E/L1:?=QB7&D&8>?W]0Z_SB9^Y&6[=[
M>$3=2*[W@MM06#3 Z5XCO@R*@/0KY)G=?XI7NHE >(NM<FG2F<$*H(J%M)Z!
MH#9"^84HF]QP5Y4 C8@Y ::4IDK$9:Z+GF@5]6>6I,K?.-;KFE1$3]H*[.-\
MI1$P)++P>A9S8D^8Z]?>:!Z@F$MH5?KQ;2)H(/@-\T7T'?+9?B";/ 9D>[/"
M/:Q]86:]MIY*\=\/<L#I0D:$)&ZUXD2>W *%E$41O+B)2DP ?))/9"S=BI1P
MA\4>^;Z:S:&QKL5WR7U.TK?%D5!XIH"F]=(=AMI$W@*?C\V$@B+'0"AZA*]3
M:0BRS1R%OL8'1[Y8'(;[X7"TX''&G2^@0 +3*17X"SC7[DAMUM*[!\/EET6R
M4Z_=S78\[# 3J9O-DZJ)SMS#)NQ#PGP]6E#*.-V1IX-S[R3J;%)FH_Y>$KDO
M8%"?5G^IR(GV9+ \)O<R65_U%:F*[]F)H*_(@[STZ3#,#)5:%4':L6RBK4,[
M/<7"8A9.89\SZ!G6/K@[Y4<BF\R 2K;&%3;3 TM?JZKBJ4))I:]S+9YSN]9C
M8B$/6Q%Y@O:^*+ASA8KT1L1%X;HU/GBD>RJT_IU"]<O%P]%S%@_^V5)4(CS8
M$ 415Q5D&\ZHUX"6KQ#R>^G:VC:>H0+5QI;2F3=@R221S@D/RQW3)AK"C#XJ
M9&"=7^$ : 0'6N)8?%+66-X]XG,F8;R_4S+E'^O:U_^O#?X93:<QTA4T^;<*
M\!S59Z$4"&XA>>L4?2GX#4E8GKYX$?.9EW_853Y-8 ]!IE[;E4KE>7=>V.Z@
M%QYAIA5K=GD07T7"ABG "=*J(!=2BUC8+('CY7^%/TV^==682N7QG3+/DZ;Y
MI]#"J<']&R!XPG,.XD_/2$N@!+F<2+70\4*0IB@^*YZ4FH*F1)+&>B70NYSK
MG)MX%8:0 QT_B=H>/A#/_Z%W+D,X[ACMR/F3"4[1[02LV^[VGOM52Q6XV\#^
MZ@U+K 'Y?1"W02G6#'4<\]3B<.6WAG_1_&40Y^^BAVO;Q\--XQ: >X<0S_66
MY<WR+N;A#>O ;JMC&35.6K:U]6)K XQOM^GD.=?^Q_>[=_99 _QI(?-#LXFM
M11P=LRO<RGW,^)Q!(A#83I]=IEYICVGEXFUJG_V!) +=O5]8LUD>97CV1VE5
ME>E^2MT]KO-M.T/:W81T<\C[[WO[[)&TN\.8MJ?/BA/*X_?9>)7BE*<& A3V
MV05/1.ZB"TWG[OU<G=4JIU'7QL.#%OSR.!=57?"(.-,"#]A1-9O.DT?QFW&U
M1E2+?DV2_[R$?H7R-U!+ P04    "  T@#57H1N_]1$$  "?#@  "@   &5X
M,S(M,2YH=&WE5VUOXC@0_H[$?YB+=%4KA9? =;4E:21*Z)8[%E#)[6D_FL0!
MWR9VZCAM^?<W3@A0NKV[91?II*,2U!Z/YYEY'H\3Y\[_.';K->=NV/?P%_3'
M\4?^>.@ZK?(7K:V-V;F9>I]A[G\>#Z^-2'#5 ZN=*O!90C.8T">X%PGA9CEA
MPIQ*%AGHB*ZS;_6S(2%RR7@/VC8H^JP:)&9+' :4*RH-U[F=3OQJUV*!DH1G
MD9!)#_(TI3(@&37<X?.*+9AR6GH]@NEVFI;3FIT*UH!*Q2(6$,4$!Q&!6E$8
MK!B-8/A,@URQ1PK3"%=0"6DNLYQP5:\I =9[^+TY;PZ:&"DHO*WN9=L\(5:2
M 0E%JFBX10((I I_U7Y7)3 G<D$XS1K3YYBNZ[5^H+2ITVYW?@@^PSWCBRRU
M3Y#LGWF&A*P-=\0A$)QODGMB:H6I,2P!YSF)0=)4R"*K89;2-7R,ELUZ[8PD
MJ0W#&+VDX"S(8"!DVH1S796SAUPH>R"2E/!U.;@ W/L6-8B0&[\!JK&H'ZJ1
MB1 H#['6O^:<0K=M8ODZ74 2(A;C] 81U?7/)5.,:FPARB98$;ZD]1I&2EB6
M%<+BQ=*0* HK*BG"+B'%(>*PRV3.9#&X,&%D@D<>60C3,YGIN0EEL0DS23,6
MHAJ*0&^IM!)QF:=9KP6%QM?F"]6\(5\X5F2PIS$3[:1P2];PA8LGK->2]DZI
ME@,]^OV;\1 &P_%XUO>\T>3#M=$VBO%\UA]4XS]&GG]W;5CM]L_&L9 :2J0%
MK,UP(90227%&'/^^VO514Q"0N,*-3KK3.KY7K7ABH5JA6_.2<4.W<\]]TVHU
M*[OK(Q&;HQ#E<;S&,Y.DL=;B5I^2/N1,T@1UDVF&=GR?$]2_!.OR/+S8LKI3
M<Z7DBEKKJON+K:571F_Y]_I+5_K[:2W_RO3^5UQV7G+)N+X1R]L(VY\BC.-)
M9+SL?173A$FD.L5VH$DUM9W$,<+&>X(5S1%[8J MFM*(<<(#/8\[AJS86S<0
M7)7'I28$=KPB:%:OO>P?S1.0_4.O#\/U,.T>SF/32A;8 #M6V:O_>U?=WVA[
M7\N'6O_F@!N)Z<-@PT+(D,I&(.*8I!E6JOK/*)XA_UG9Y6.FM\7N>[O) U%W
MM:BW(:OS<Q.3X M8B#L3,0L-MY6U7M]O.Z%]/RSWQ-O_JYOX(.+V])S@T?!
M5C\U&G#+:!SV8$:6U,9='G+* R3?LF&:%B>]IZ-M+@,;/I$X1W/W"AJ-*E%O
M]*E"NM\@WZ7J58LLYKY*>V='^R[QUSG8<&2W_@H8G,-@>T6HTK?!7Z>895^2
M!0MLF)"$EB6:")UW]_V^5ZMRTZ9=A9T6UN6X$NV7X CN]09OX-B'K?,I63S-
MFURELI9^P2S?./6+Z5]02P,$%     @ -( U5Y:M"AW^ P  F X   H   !E
M>#,R+3(N:'1MY5=1<]HX$'YGAO^P]<QEDAG -C2="W8\0S!IN%)@@J\W?12V
M %UMR9'E2_CW7=D8:-+VKK1^NC 3+*U6^^U^GU;8O0O>3[QFP[T;#7S\!OWG
M!N-@,O)<L_Q&J[DSNS<S_R,L@H^3T;6Q$ESUP;92!0%+: 93^@CW(B&\54ZT
M8$$E6QGHB*[S'_5S("%RS7@?+ <4?5)M$K,U#D/*%96&Y][.ID&U:[% 2<*S
ME9!)'_(TI3(D&36\T=.&+9D"U]0.7J_;Z;KFO"Y40RH56[&0*"8XB!6H#86Y
M9#QD*8GAEG&"C_@T6^$J*B'-9983KIH-)<#^'?[L+#K##D8+BQWLWJ75JA$O
MR8!$(E4TVB,!!%*%O[+>5$DLB%P23K/V["FFVV9C$"IMZEI6G?4\X\LL=6H(
M\'>>(5%;PQMS" 7GNX0?F=I@N@S+PGF./$F:"EED.LI2NH7WJW6GV3@C2>K
M*$8O*3@+,Q@*F7;@7%?J["$7RAF*)"5\6PXN />^16DBY/8[0)$6-461,A$!
MY1'6_X^<4^A9+2QIMP=(S(K%.+U#1#4GN62*48TM@M%3N"%\39L-C)2P+"L$
MQXNE$5$4-E12A%U"BB/$X93)G,EB<-&"<0O>$87J)+!("1X?T?JN6'=2V*76
M0I:TVO'AOZ@83M4:'$FMA792N"5;^,3%(Y9H3?N_1" OU!8,;B8C&(XFD_G
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
MHPB;[)R?Q>ZKE/'>^#:#@Y:63YN\4%=145Y7$QP043SHW8SL$-;F>=2@M-#
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
MT!6;?F,/+X2U,? _51AS])]02P$"% ,4    "  T@#575>;40ZC\  !@6@D
M$               @ $     97-P+3(P,C,P-C,P+FAT;5!+ 0(4 Q0    (
M #2 -5=#>NH%<14  '4  0 0              "  =;\  !E<W M,C R,S V
M,S N>'-D4$L! A0#%     @ -( U5Z_UWIFT#0  ,9X  !0
M ( !=1(! &5S<"TR,#(S,#8S,%]C86PN>&UL4$L! A0#%     @ -( U5R_5
MS:?9/@  T?$# !0              ( !6R ! &5S<"TR,#(S,#8S,%]D968N
M>&UL4$L! A0#%     @ -( U5S:V[BC2I   JQX( !0              ( !
M9E\! &5S<"TR,#(S,#8S,%]L86(N>&UL4$L! A0#%     @ -( U5P=%?%P'
M0   _S $ !0              ( !:@0" &5S<"TR,#(S,#8S,%]P<F4N>&UL
M4$L! A0#%     @ -( U5ROO8V82 P  : L   H              ( !HT0"
M &5X,C,M,2YH=&U02P$"% ,4    "  T@#57O8F95;L'  "^(@  "@
M        @ '=1P( 97@S,2TQ+FAT;5!+ 0(4 Q0    ( #2 -5=057_.CP<
M (PB   *              "  <!/ @!E>#,Q+3(N:'1M4$L! A0#%     @
M-( U5Z$;O_41!   GPX   H              ( !=U<" &5X,S(M,2YH=&U0
M2P$"% ,4    "  T@#57EJT*'?X#  "8#@  "@              @ &P6P(
M97@S,BTR+FAT;5!+ 0(4 Q0    ( #2 -5<J#(-^&0T  +@-   -
M      "  =9? @!I;6%G95\P,#$N:G!G4$L%!@     ,  P UP(  !IM @
!  $!

end
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
