<SEC-DOCUMENT>0001193125-25-179082.txt : 20250812
<SEC-HEADER>0001193125-25-179082.hdr.sgml : 20250812
<ACCEPTANCE-DATETIME>20250812171249
ACCESSION NUMBER:		0001193125-25-179082
CONFORMED SUBMISSION TYPE:	S-8
PUBLIC DOCUMENT COUNT:		18
FILED AS OF DATE:		20250812
DATE AS OF CHANGE:		20250812
EFFECTIVENESS DATE:		20250812

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			Spero Therapeutics, Inc.
		CENTRAL INDEX KEY:			0001701108
		STANDARD INDUSTRIAL CLASSIFICATION:	PHARMACEUTICAL PREPARATIONS [2834]
		ORGANIZATION NAME:           	03 Life Sciences
		EIN:				000000000
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		S-8
		SEC ACT:		1933 Act
		SEC FILE NUMBER:	333-289544
		FILM NUMBER:		251207836

	BUSINESS ADDRESS:	
		STREET 1:		675 MASSACHUSETTS AVENUE
		STREET 2:		14TH FLOOR
		CITY:			CAMBRIDGE
		STATE:			MA
		ZIP:			02139
		BUSINESS PHONE:		857-242-1600

	MAIL ADDRESS:	
		STREET 1:		675 MASSACHUSETTS AVENUE
		STREET 2:		14TH FLOOR
		CITY:			CAMBRIDGE
		STATE:			MA
		ZIP:			02139

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	Spero Therapeutics, LLC
		DATE OF NAME CHANGE:	20170316
</SEC-HEADER>
<DOCUMENT>
<TYPE>S-8
<SEQUENCE>1
<FILENAME>d24105ds8.htm
<DESCRIPTION>S-8
<TEXT>
<HTML><HEAD>
<TITLE>S-8</TITLE>
</HEAD>
 <BODY BGCOLOR="WHITE" STYLE="line-height:Normal">

<Center><DIV STYLE="width:8.5in" align="left">
 <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>As filed with the Securities and Exchange Commission on August&nbsp;12, 2025 </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right"><B>Registration <FONT STYLE="white-space:nowrap">No.&nbsp;333-&#8195;&#8195;&#8195;</FONT> </B></P>
<P STYLE="font-size:4pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P><DIV STYLE="line-height:1.0pt;margin-top:0pt;margin-bottom:0pt;border-bottom:1px solid #000000">&nbsp;
</DIV><DIV STYLE="line-height:3.0pt;margin-top:0pt;margin-bottom:2pt;border-bottom:1px solid #000000">&nbsp;</DIV> <P STYLE="margin-top:4pt; margin-bottom:0pt; font-size:18pt; font-family:Times New Roman" ALIGN="center"><B>UNITED STATES </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:18pt; font-family:Times New Roman" ALIGN="center"><B>SECURITIES AND EXCHANGE COMMISSION </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:12pt; font-family:Times New Roman" ALIGN="center"><B>WASHINGTON, D.C. 20549 </B></P>
<P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P><center><DIV STYLE="line-height:6.0pt;margin-top:0pt;margin-bottom:2pt;border-bottom:1.00pt solid #000000;width:21%">&nbsp;</DIV></center>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:18pt; font-family:Times New Roman" ALIGN="center"><B>FORM <FONT STYLE="white-space:nowrap">S-8</FONT></B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:18pt; font-family:Times New Roman" ALIGN="center"><B>REGISTRATION STATEMENT </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:12pt; font-family:Times New Roman" ALIGN="center"><B><I>UNDER </I></B></P> <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:12pt; font-family:Times New Roman" ALIGN="center"><B><I>THE
SECURITIES ACT OF 1933 </I></B></P> <P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P><center><DIV STYLE="line-height:6.0pt;margin-top:0pt;margin-bottom:2pt;border-bottom:1.00pt solid #000000;width:21%">&nbsp;</DIV></center>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:24pt; font-family:Times New Roman" ALIGN="center"><B>SPERO THERAPEUTICS, INC. </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>(Exact name of registrant as specified in its charter) </B></P>
<P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P><center><DIV STYLE="line-height:6.0pt;margin-top:0pt;margin-bottom:2pt;border-bottom:1.00pt solid #000000;width:21%">&nbsp;</DIV></center>
<P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE CELLSPACING="0" CELLPADDING="0" WIDTH="100%" BORDER="0" STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:8pt" ALIGN="center">


<TR>

<TD WIDTH="50%"></TD>

<TD VALIGN="bottom" WIDTH="1%"></TD>
<TD WIDTH="48%"></TD></TR>


<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top" ALIGN="center"><B>Delaware</B></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" ALIGN="center"><B><FONT STYLE="white-space:nowrap">46-4590683</FONT></B></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<TD VALIGN="top" ALIGN="center"> <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:8pt; font-family:Times New Roman" ALIGN="center"><B>(State or other jurisdiction of</B></P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:8pt; font-family:Times New Roman" ALIGN="center"><B>incorporation or organization)</B></P></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" ALIGN="center"> <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:8pt; font-family:Times New Roman" ALIGN="center"><B>(I.R.S. Employer</B></P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:8pt; font-family:Times New Roman" ALIGN="center"><B>Identification No.)</B></P></TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="16"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top" ALIGN="center"> <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>675 Massachusetts Avenue, 14th Floor</B></P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>Cambridge, Massachusetts</B></P></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="center"><B>02139</B></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<TD VALIGN="top" ALIGN="center"><B>(Address of Principal Executive Offices)</B></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" ALIGN="center"><B>(Zip Code)</B></TD></TR>
</TABLE> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>SPERO THERAPEUTICS, INC. 2017 STOCK INCENTIVE PLAN, AS AMENDED </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:8pt; font-family:Times New Roman" ALIGN="center"><B>(Full title of the plan) </B></P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>Esther Rajavelu, President, Chief Executive Officer, Chief Financial Officer and Treasurer </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>Spero Therapeutics, Inc. </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>675 Massachusetts Avenue, 14th Floor </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>Cambridge, Massachusetts 02139 </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:8pt; font-family:Times New Roman" ALIGN="center"><B>(Name and address of agent of service) </B></P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>(857) <FONT STYLE="white-space:nowrap">242-1600</FONT></B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:8pt; font-family:Times New Roman" ALIGN="center"><B>(Telephone number, including area code, of agent for service) </B></P>
<P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P><center><DIV STYLE="line-height:6.0pt;margin-top:0pt;margin-bottom:2pt;border-bottom:1.00pt solid #000000;width:21%">&nbsp;</DIV></center>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a <FONT STYLE="white-space:nowrap">non-accelerated</FONT>
filer, a smaller reporting company or an emerging growth company. See the definitions of &#147;large accelerated filer,&#148; &#147;accelerated filer,&#148; &#147;smaller reporting company,&#148; and &#147;emerging growth company&#148; in Rule <FONT
STYLE="white-space:nowrap">12b-2</FONT> of the Exchange Act. </P> <P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE CELLSPACING="0" CELLPADDING="0" WIDTH="100%" BORDER="0" STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" ALIGN="center">


<TR>

<TD WIDTH="17%"></TD>

<TD VALIGN="bottom" WIDTH="1%"></TD>
<TD WIDTH="57%"></TD>

<TD VALIGN="bottom" WIDTH="1%"></TD>
<TD WIDTH="21%"></TD>

<TD VALIGN="bottom" WIDTH="1%"></TD>
<TD WIDTH="2%"></TD></TR>


<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="bottom">Large&nbsp;accelerated&nbsp;filer</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&#9744;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">Accelerated&nbsp;filer</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&#9744;</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="8"></TD>
<TD HEIGHT="8" COLSPAN="2"></TD>
<TD HEIGHT="8" COLSPAN="2"></TD>
<TD HEIGHT="8" COLSPAN="2"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="bottom">Non-accelerated filer</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&#9746;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">Smaller&nbsp;reporting&nbsp;company</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&#9746;</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="8"></TD>
<TD HEIGHT="8" COLSPAN="2"></TD>
<TD HEIGHT="8" COLSPAN="2"></TD>
<TD HEIGHT="8" COLSPAN="2"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">Emerging&nbsp;growth&nbsp;company</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&#9744;</TD></TR>
</TABLE> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">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&nbsp;7(a)(2)(B) of the Securities Act.&#8194;&#9744; </P>
<P STYLE="font-size:10pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P><DIV STYLE="line-height:1.0pt;margin-top:0pt;margin-bottom:0pt;border-bottom:1px solid #000000">&nbsp;
</DIV><DIV STYLE="line-height:3.0pt;margin-top:0pt;margin-bottom:2pt;border-bottom:1px solid #000000">&nbsp;</DIV>
</DIV></Center>


<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<HR SIZE="3" style="COLOR:#999999" WIDTH="100%" ALIGN="CENTER">

<Center><DIV STYLE="width:8.5in" align="left">
 <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>EXPLANATORY NOTE </B></P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">This registration statement registers an aggregate of 3,000,000 additional shares of common stock of Spero Therapeutics, Inc. (the &#147;Registrant&#148;)
reserved under the Spero Therapeutics, Inc. 2017 Stock Incentive Plan, as amended (the &#147;2017 Plan&#148;), representing an increase of 3,000,000 shares reserved under the 2017 Plan effective June&nbsp;12, 2025. This registration statement
registers additional securities of the same class as other securities for which a registration statement filed on Form <FONT STYLE="white-space:nowrap">S-8</FONT> relating to the 2017 Plan has previously been filed and is effective. This
registration statement incorporates by reference the contents of (i)&nbsp;the registration statement on Form <FONT STYLE="white-space:nowrap">S-8</FONT> (File <FONT STYLE="white-space:nowrap">No.&nbsp;333-222060),</FONT> filed with the Securities
and Exchange Commission on <A HREF="http://www.sec.gov/Archives/edgar/data/1701108/000119312517369542/d478252ds8.htm">December&nbsp;14, 2017</A> by the Registrant, (ii)&nbsp;the registration statement on Form
<FONT STYLE="white-space:nowrap">S-8</FONT> (File <FONT STYLE="white-space:nowrap">No.&nbsp;
333-230281),</FONT> filed with the Securities and Exchange Commission on <A HREF="http://www.sec.gov/Archives/edgar/data/1701108/000119312519074902/d720152ds8.htm">March<U></U>&nbsp;14, 2019</A> by the Registrant, (iii)&nbsp;the registration
statement on Form <FONT STYLE="white-space:nowrap">S-8</FONT> (File <FONT STYLE="white-space:nowrap">No.&nbsp;
333-237283),</FONT> filed with the Securities and Exchange Commission on <A HREF="http://www.sec.gov/Archives/edgar/data/1701108/000119312520079102/d831337ds8.htm">March<U></U>&nbsp;19, 2020</A> by the Registrant, (iv)&nbsp;the registration statement
on Form <FONT STYLE="white-space:nowrap">S-8</FONT> (File <FONT STYLE="white-space:nowrap">No.&nbsp;
333-254173),</FONT> filed with the Securities and Exchange Commission on <A HREF="http://www.sec.gov/Archives/edgar/data/1701108/000119312521077939/d10111ds8.htm">March<U></U>&nbsp;11, 2021</A> by the Registrant, (v)&nbsp;the registration statement
on Form <FONT STYLE="white-space:nowrap">S-8</FONT> (File <FONT STYLE="white-space:nowrap">No.&nbsp;
333-259662),</FONT> filed with the Securities and Exchange Commission on <A HREF="http://www.sec.gov/Archives/edgar/data/1701108/000119312521277265/d110200ds8.htm">September<U></U>&nbsp;20, 2021</A> by the Registrant, (vi)&nbsp;the registration
statement on Form <FONT STYLE="white-space:nowrap">S-8</FONT> (File <FONT STYLE="white-space:nowrap">No.&nbsp;
333-268344),</FONT> filed with the Securities and Exchange Commission on <A HREF="http://www.sec.gov/Archives/edgar/data/1701108/000119312522284615/d421523ds8.htm">November<U></U>&nbsp;14, 2022</A> by the Registrant, (vii)&nbsp;the registration
statement on Form <FONT STYLE="white-space:nowrap">S-8</FONT> (File <FONT STYLE="white-space:nowrap">No.&nbsp;
333-275514),</FONT> filed with the Securities and Exchange Commission on <A HREF="http://www.sec.gov/Archives/edgar/data/1701108/000119312523276127/d568942ds8.htm">November<U></U>&nbsp;13, 2023</A> by the Registrant, and (viii)&nbsp;the registration
statement on Form <FONT STYLE="white-space:nowrap">S-8</FONT> (File <FONT STYLE="white-space:nowrap">No.&nbsp;
333-281245),</FONT> filed with the Securities and Exchange Commission on <A HREF="http://www.sec.gov/Archives/edgar/data/1701108/000119312524193960/d791846ds8.htm">August<U></U>&nbsp;5, 2024</A> by the Registrant, in each case, except for Item 8,
Exhibits.</P>
</DIV></Center>


<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<HR SIZE="3" style="COLOR:#999999" WIDTH="100%" ALIGN="CENTER">

<Center><DIV STYLE="width:8.5in" align="left">
 <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"><B>Item&#8201;8. Exhibits. </B></P> <P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE CELLSPACING="0" CELLPADDING="0" WIDTH="100%" BORDER="0" STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" ALIGN="center">


<TR>

<TD></TD>

<TD VALIGN="bottom" WIDTH="4%"></TD>
<TD WIDTH="57%"></TD>

<TD VALIGN="bottom" WIDTH="2%"></TD>
<TD></TD>
<TD></TD>
<TD></TD>

<TD VALIGN="bottom" WIDTH="2%"></TD>
<TD></TD>
<TD></TD>
<TD></TD>

<TD VALIGN="bottom" WIDTH="2%"></TD>
<TD></TD>
<TD></TD>
<TD></TD>

<TD VALIGN="bottom" WIDTH="2%"></TD>
<TD></TD>
<TD></TD>
<TD></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<TD VALIGN="bottom" ALIGN="center"><B>Exhibit <BR>Number</B></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="center" STYLE="border-bottom:1.00pt solid #000000"> <P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:8pt; font-family:Times New Roman" ALIGN="center"><B>Exhibit Description</B></P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom" COLSPAN="2" ALIGN="center" STYLE="border-bottom:1.00pt solid #000000"><B>Filed<BR>Herewith</B></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom" COLSPAN="2" ALIGN="center" STYLE="border-bottom:1.00pt solid #000000"><B>Incorporated&nbsp;by<BR>Reference<BR>herein from<BR>Form or<BR>Schedule</B></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" COLSPAN="2" ALIGN="center" STYLE="border-bottom:1.00pt solid #000000"><B>Filing Date</B></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom" COLSPAN="2" ALIGN="center" STYLE="border-bottom:1.00pt solid #000000"><B>SEC File/<BR>Reg. Number</B></TD>
<TD VALIGN="bottom">&nbsp;</TD></TR>


<TR STYLE="font-size:1pt">
<TD HEIGHT="8"></TD>
<TD HEIGHT="8" COLSPAN="2"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top" NOWRAP>&#8199;4.1</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"><A HREF="http://www.sec.gov/Archives/edgar/data/1701108/000119312517305888/d431217dex41.htm">Form of Common Stock Certificate of Registrant. </A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;<BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman"></P></TD>
<TD VALIGN="bottom" ALIGN="right"><FONT STYLE="white-space:nowrap">Form&nbsp;S-1</FONT><BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right">(Exhibit&nbsp;4.1</P></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;<BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman">)&nbsp;</P></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">10/6/2017</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right"><FONT STYLE="white-space:nowrap">333-220858</FONT></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="8"></TD>
<TD HEIGHT="8" COLSPAN="2"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top" NOWRAP>&#8199;4.2</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"><A HREF="http://www.sec.gov/Archives/edgar/data/1701108/000119312517334318/d490191dex31.htm">Amended and Restated Certificate of Incorporation of the Registrant. </A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;<BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman"></P></TD>
<TD VALIGN="bottom" ALIGN="right">Form <FONT STYLE="white-space:nowrap">8-K</FONT><BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right">(Exhibit&nbsp;3.1</P></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;<BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman">)&nbsp;</P></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">11/6/2017</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right"><FONT STYLE="white-space:nowrap">001-38266</FONT></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="8"></TD>
<TD HEIGHT="8" COLSPAN="2"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top" NOWRAP>&#8199;4.3</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"><A HREF="http://www.sec.gov/Archives/edgar/data/1701108/000119312521250505/d198322dex31.htm">Certificate of Amendment to Amended and Restated Certificate of Incorporation of the Registrant. </A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;<BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman"></P></TD>
<TD VALIGN="bottom" ALIGN="right">Form <FONT STYLE="white-space:nowrap">8-K</FONT><BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right">(Exhibit&nbsp;3.1</P></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;<BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman">)&nbsp;</P></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">8/18/2021</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right"><FONT STYLE="white-space:nowrap">001-38266</FONT></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="8"></TD>
<TD HEIGHT="8" COLSPAN="2"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top" NOWRAP>&#8199;4.4</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"><A HREF="http://www.sec.gov/Archives/edgar/data/1701108/000095017023062897/spro-ex3_1.htm">Amended and Restated Bylaws of the Registrant. </A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;<BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman"></P></TD>
<TD VALIGN="bottom" ALIGN="right">Form <FONT STYLE="white-space:nowrap">10-Q</FONT><BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right">(Exhibit&nbsp;3.1</P></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;<BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman">)&nbsp;</P></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">11/13/2023</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right"><FONT STYLE="white-space:nowrap">001-38266</FONT></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="8"></TD>
<TD HEIGHT="8" COLSPAN="2"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top" NOWRAP>&#8199;5.1</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"><A HREF="d24105dex51.htm">Opinion of Wilmer Cutler Pickering Hale and Dorr LLP. </A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">X</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="8"></TD>
<TD HEIGHT="8" COLSPAN="2"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top" NOWRAP>23.1</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"><A HREF="d24105dex231.htm">Consent of PricewaterhouseCoopers LLP, independent registered public accounting firm. </A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">X</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="8"></TD>
<TD HEIGHT="8" COLSPAN="2"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top" NOWRAP>23.2</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"><A HREF="d24105dex51.htm">Consent of Wilmer Cutler Pickering Hale and Dorr LLP (included in opinion of counsel filed as Exhibit 5.1). </A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">X</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="8"></TD>
<TD HEIGHT="8" COLSPAN="2"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top" NOWRAP>24.1</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"><A HREF="d24105ds8.htm#sig">Power of Attorney (set forth on the signature page of this registration statement). </A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">X</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="8"></TD>
<TD HEIGHT="8" COLSPAN="2"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top" NOWRAP>99.1</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"><A HREF="http://www.sec.gov/Archives/edgar/data/1701108/000095017025107388/spro-ex10_1.htm">2017 Stock Incentive Plan, as amended. </A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;<BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman"></P></TD>
<TD VALIGN="bottom" ALIGN="right">Form <FONT STYLE="white-space:nowrap">10-Q</FONT><BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right">(Exhibit&nbsp;10.1</P></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;<BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman">)&nbsp;</P></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">8/12/2025</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right"><FONT STYLE="white-space:nowrap">001-38266</FONT></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="8"></TD>
<TD HEIGHT="8" COLSPAN="2"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top" NOWRAP>99.2</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"><A HREF="http://www.sec.gov/Archives/edgar/data/1701108/000119312521277265/d110200dex46.htm">Form of Stock Option Agreement under the 2017 Stock Incentive Plan, as amended. </A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;<BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman"></P></TD>
<TD VALIGN="bottom" ALIGN="right">Form <FONT STYLE="white-space:nowrap">S-8</FONT><BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right">(Exhibit 4.6</P></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;<BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman">)&nbsp;</P></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">9/20/2021</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right"><FONT STYLE="white-space:nowrap">333-259662</FONT></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="8"></TD>
<TD HEIGHT="8" COLSPAN="2"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top" NOWRAP>99.3</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"><A HREF="http://www.sec.gov/Archives/edgar/data/1701108/000119312521260572/d197711dex101.htm">Form of Restricted Stock Unit Agreement under the 2017 Stock Incentive Plan, as amended. </A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;<BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman"></P></TD>
<TD VALIGN="bottom" ALIGN="right">Form <FONT STYLE="white-space:nowrap">8-K</FONT><BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right">(Exhibit&nbsp;10.1</P></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;<BR> <P STYLE="margin-bottom:1pt; margin-top:0pt; font-size:10pt; font-family:Times New Roman">)&nbsp;</P></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">8/30/2021</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right"><FONT STYLE="white-space:nowrap">001-38266</FONT></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="8"></TD>
<TD HEIGHT="8" COLSPAN="2"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top" NOWRAP>107</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"><A HREF="d24105dexfilingfees.htm">Filing Fee Table. </A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">X</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom"></TD></TR>
</TABLE>
</DIV></Center>


<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<HR SIZE="3" style="COLOR:#999999" WIDTH="100%" ALIGN="CENTER">

<Center><DIV STYLE="width:8.5in" align="left">
 <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B><A NAME="sig"></A>SIGNATURES </B></P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">Pursuant to the requirements of the Securities Act of 1933, the Registrant certifies that it has reasonable grounds to believe that it meets all of the
requirements for filing on Form <FONT STYLE="white-space:nowrap">S-8</FONT> and has duly caused this registration statement to be signed on its behalf by the undersigned, thereunto duly authorized, in the City of Cambridge, Commonwealth of
Massachusetts, on August 12, 2025. </P> <P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE CELLSPACING="0" CELLPADDING="0" WIDTH="40%" BORDER="0" STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt">


<TR>

<TD WIDTH="7%"></TD>

<TD VALIGN="bottom" WIDTH="1%"></TD>
<TD WIDTH="92%"></TD></TR>


<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top" COLSPAN="3"><B>SPERO THERAPEUTICS, INC.</B></TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="16"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">By:</TD>
<TD VALIGN="bottom" STYLE=" BORDER-BOTTOM:1px solid #000000">&nbsp;</TD>
<TD VALIGN="top" STYLE="BORDER-BOTTOM:1px solid #000000">/s/ Esther Rajavelu</TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">Esther Rajavelu</TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">President, Chief Executive Officer, Chief Financial Officer and Treasurer</TD></TR>
</TABLE> <P STYLE="margin-top:24pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>POWER OF ATTORNEY AND SIGNATURES </B></P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">Each person whose signature appears below constitutes and appoints Esther Rajavelu and Timothy Keutzer, and each of them singly, his or her true and lawful <FONT
STYLE="white-space:nowrap"><FONT STYLE="white-space:nowrap">attorneys-in-fact</FONT></FONT> and agents, with full power of substitution and resubstitution in each of them singly, for him or her and in his or her name, place and stead, and in any and
all capacities, to sign any and all amendments (including post-effective amendments) to this Registration Statement on Form <FONT STYLE="white-space:nowrap">S-8</FONT> of Spero Therapeutics, Inc., and to file the same, with all exhibits thereto and
other documents in connection therewith, with the Securities and Exchange Commission, granting to the <FONT STYLE="white-space:nowrap"><FONT STYLE="white-space:nowrap">attorneys-in-fact</FONT></FONT> and agents, and each of them, full power and
authority to do and perform each and every act and thing requisite or necessary to be done in connection therewith, as fully to all intents and purposes as he or she might or could do in person, hereby ratifying and confirming all that the <FONT
STYLE="white-space:nowrap"><FONT STYLE="white-space:nowrap">attorneys-in-fact</FONT></FONT> and agents or any of each of them or their substitute may lawfully do or cause to be done by virtue hereof. </P>
</DIV></Center>


<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<HR SIZE="3" style="COLOR:#999999" WIDTH="100%" ALIGN="CENTER">

<Center><DIV STYLE="width:8.5in" align="left">
 <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">Pursuant to the requirements of the Securities Act of 1933, this registration statement has been signed by
the following persons in the capacities and on the dates indicated. </P> <P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE CELLSPACING="0" CELLPADDING="0" WIDTH="100%" BORDER="0" STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt">


<TR>

<TD WIDTH="38%"></TD>

<TD VALIGN="bottom"></TD>
<TD WIDTH="44%"></TD>

<TD VALIGN="bottom" WIDTH="1%"></TD>
<TD WIDTH="16%"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<TD VALIGN="bottom" ALIGN="center"><B>Signature</B></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="center"><B>Title</B></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="center"><B>Date</B></TD></TR>


<TR STYLE="font-size:1pt">
<TD HEIGHT="16"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:0pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman" ALIGN="center">/s/ Esther Rajavelu</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">Esther Rajavelu</P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top" ALIGN="center"> <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">President, Chief Executive Officer, Chief Financial Officer and Treasurer</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><I>(Principal Executive Officer, Principal Financial Officer and Principal Accounting Officer)</I></P></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" NOWRAP ALIGN="center">August&nbsp;12, 2025</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="16"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:0pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman" ALIGN="center">/s/ Frank E. Thomas</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">Frank E. Thomas</P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top" ALIGN="center">Chairman</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" NOWRAP ALIGN="center">August&nbsp;12, 2025</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="16"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:0pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman" ALIGN="center">/s/ Milind Deshpande, Ph.D.</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">Milind Deshpande, Ph.D.</P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top" ALIGN="center">Director</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" NOWRAP ALIGN="center">August&nbsp;12, 2025</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="16"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:0pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman" ALIGN="center">/s/ Scott Jackson</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">Scott Jackson</P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top" ALIGN="center">Director</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" NOWRAP ALIGN="center">August&nbsp;12, 2025</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="16"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:0pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman" ALIGN="center">/s/ Ankit Mahadevia, M.D.</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">Ankit Mahadevia, M.D.</P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top" ALIGN="center">Director</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" NOWRAP ALIGN="center">August&nbsp;12, 2025</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="16"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:0pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman" ALIGN="center">/s/ John C. Pottage, M.D.</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">John C. Pottage, M.D.</P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top" ALIGN="center">Director</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" NOWRAP ALIGN="center">August&nbsp;12, 2025</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="16"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:0pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman" ALIGN="center">/s/ Cynthia Smith</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">Cynthia Smith</P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top" ALIGN="center">Director</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" NOWRAP ALIGN="center">August&nbsp;12, 2025</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="16"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:0pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman" ALIGN="center">/s/ Kathleen Tregoning</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">Kathleen Tregoning</P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top" ALIGN="center">Director</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" NOWRAP ALIGN="center">August&nbsp;12, 2025</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="16"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD>
<TD HEIGHT="16" COLSPAN="2"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:0pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman" ALIGN="center">/s/ Patrick Vink, M.D.</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">Patrick Vink, M.D.</P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top" ALIGN="center">Director</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" NOWRAP ALIGN="center">August&nbsp;12, 2025</TD></TR>
</TABLE>
</DIV></Center>

</BODY></HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-5.1
<SEQUENCE>2
<FILENAME>d24105dex51.htm
<DESCRIPTION>EX-5.1
<TEXT>
<HTML><HEAD>
<TITLE>EX-5.1</TITLE>
</HEAD>
 <BODY BGCOLOR="WHITE" STYLE="line-height:Normal">

<Center><DIV STYLE="width:8.5in" align="left">
 <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right"><B>Exhibit 5.1 </B></P> <P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<P STYLE="margin-top:0pt;margin-bottom:0pt" ALIGN="right">


<IMG SRC="g24105g0811220021442.jpg" ALT="LOGO" STYLE="width:1.3in;height:0.169444in;">
 </P> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right">+1 617 526 6000 (t) </P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right">+1 617 526 5000 (f) </P> <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right">wilmerhale.com
</P> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">August&nbsp;12, 2025 </P> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">Spero Therapeutics, Inc. </P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">675 Massachusetts Avenue, 14th Floor </P> <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">Cambridge, Massachusetts
02139 </P> <P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P>
<TABLE STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt" BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%">
<TR style = "page-break-inside:avoid">
<TD WIDTH="4%" VALIGN="top" ALIGN="left">Re:</TD>
<TD ALIGN="left" VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman; " ALIGN="left">2017 Stock Incentive Plan, as amended </P></TD></TR></TABLE>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">Ladies and Gentlemen: </P> <P STYLE="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We have assisted in the
preparation of a Registration Statement on Form <FONT STYLE="white-space:nowrap">S-8</FONT> (the &#147;Registration Statement&#148;) to be filed with the Securities and Exchange Commission (the &#147;Commission&#148;) under the Securities Act of
1933, as amended (the &#147;Securities Act&#148;), relating to an aggregate of 3,000,000 shares of common stock, $0.001 par value per share (the &#147;Shares&#148;), of Spero Therapeutics, Inc., a Delaware corporation (the &#147;Company&#148;),
issuable under the Company&#146;s 2017 Stock Incentive Plan, as amended (the &#147;Plan&#148;). </P> <P STYLE="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We have examined the Certificate of
Incorporation and Bylaws of the Company, each as amended and restated to date, and originals, or copies certified to our satisfaction, of all pertinent records of the meetings of the board of directors and stockholders of the Company, the
Registration Statement, the Plan and such other documents relating to the Company as we have deemed material for the purposes of this opinion. </P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">In our examination of the foregoing documents, we have assumed the genuineness of all signatures, the authenticity of all documents submitted
to us as originals, the conformity to original documents of all documents submitted to us as certified, photostatic or other copies, the authenticity of the originals of any such documents and the legal competence of all signatories to such
documents. </P> <P STYLE="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We assume that the appropriate action will be taken, prior to the offer and sale of the Shares in accordance with the Plan, to
register and qualify the Shares for sale under all applicable state securities or &#147;blue sky&#148; laws. </P> <P STYLE="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We express no opinion herein
as to the laws of any state or jurisdiction other than the General Corporation Law of the State of Delaware. </P>
 <p STYLE="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&nbsp;</P> <P STYLE="margin-top:0pt;margin-bottom:0pt" ALIGN="center">


<IMG SRC="g24105g0811220022670.jpg" ALT="LOGO" STYLE="width:6.56528in;height:0.286111in;">
 </P>

</DIV></Center>


<p style="margin-top:1em; margin-bottom:0em; page-break-before:always"> </p>
<HR SIZE="3" style="COLOR:#999999" WIDTH="100%" ALIGN="CENTER">

<Center><DIV STYLE="width:8.5in" align="left">

 <P STYLE="margin-top:0pt;margin-bottom:0pt" ALIGN="right">


<IMG SRC="g24105g0811220021649.jpg" ALT="LOGO">
 </P> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">August 12, 2025 </P> <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">Page 2 </P>
<p STYLE="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&nbsp;</P>
 <P STYLE="margin-top:0pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">It is understood that this opinion is to be used only in connection with the offer and sale
of the Shares while the Registration Statement is in effect. </P> <P STYLE="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Please note that we are opining only as to the matters expressly set forth
herein, and no opinion should be inferred as to any other matters. </P> <P STYLE="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Based on the foregoing, we are of the opinion that the Shares have
been duly authorized for issuance and, when the Shares are issued and paid for in accordance with the terms and conditions of the Plan, the Shares will be validly issued, fully paid and nonassessable. </P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We hereby consent to the filing of this opinion with the Commission in connection with the Registration Statement in accordance with the
requirements of Item 601(b)(5) of Regulation <FONT STYLE="white-space:nowrap">S-K</FONT> under the Securities Act. In giving such consent, we do not hereby admit that we are in the category of persons whose consent is required under Section&nbsp;7
of the Securities Act or the rules and regulations of the Commission. </P> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">Very truly yours, </P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">/s/ Wilmer Cutler Pickering Hale and Dorr LLP </P> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">WILMER CUTLER
PICKERING HALE AND DORR LLP </P>
 <p STYLE="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&nbsp;</P> <P STYLE="margin-top:0pt;margin-bottom:0pt" ALIGN="center">


<IMG SRC="g24105g0811220022670.jpg" ALT="LOGO">
 </P>

</DIV></Center>

</BODY></HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23.1
<SEQUENCE>3
<FILENAME>d24105dex231.htm
<DESCRIPTION>EX-23.1
<TEXT>
<HTML><HEAD>
<TITLE>EX-23.1</TITLE>
</HEAD>
 <BODY BGCOLOR="WHITE" STYLE="line-height:Normal">

<Center><DIV STYLE="width:8.5in" align="left">
 <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="right"><B>Exhibit 23.1 </B></P>
<P STYLE="margin-top:24pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">CONSENT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM </P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">We hereby consent to the incorporation by reference in this Registration Statement on Form <FONT STYLE="white-space:nowrap">S-8</FONT><B> </B>of Spero
Therapeutics, Inc. of our report dated March&nbsp;27, 2025<B> </B>relating to the financial statements, which appears in Spero Therapeutics, Inc.&#146;s Annual Report on Form <FONT STYLE="white-space:nowrap">10-K</FONT> for the year ended
December&nbsp;31, 2024. </P> <P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P> <P STYLE="margin-top:0pt;margin-bottom:0pt">


<IMG SRC="g24105dsp1.jpg" ALT="LOGO">
 </P> <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">Boston, Massachusetts </P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">August&nbsp;12, 2025 </P>
 <p STYLE="margin-top:0pt;margin-bottom:0pt ; font-size:8pt">&nbsp;</P> <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">1 </P>

</DIV></Center>

</BODY></HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-FILING FEES
<SEQUENCE>4
<FILENAME>d24105dexfilingfees.htm
<DESCRIPTION>EX-FILING FEES
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dei="http://xbrl.sec.gov/dei/2025" xmlns:ffd="http://xbrl.sec.gov/ffd/2025">
<head>
<title>EX-FILING FEES</title>
</head>
  <body> <div style="display: none"> <ix:header> <ix:hidden> <ix:nonNumeric name="ffd:FormTp" contextRef="rc" id="ixv-168">S-8</ix:nonNumeric> <ix:nonNumeric name="ffd:SubmissnTp" contextRef="rc" id="ixv-169">S-8</ix:nonNumeric> <ix:nonNumeric name="ffd:FeeExhibitTp" contextRef="rc" id="ixv-170">EX-FILING FEES</ix:nonNumeric> <ix:nonNumeric name="dei:EntityCentralIndexKey" contextRef="rc" id="ixv-171">0001701108</ix:nonNumeric> <ix:nonNumeric name="dei:EntityRegistrantName" contextRef="rc" id="ixv-172">Spero Therapeutics, Inc.</ix:nonNumeric> <ix:nonNumeric name="ffd:OfferingTableNa" contextRef="rc" id="hiddenrcOfferingTableNa" xsi:nil="true"></ix:nonNumeric> <ix:nonNumeric name="ffd:OffsetTableNa" contextRef="rc" id="hiddenrcOffsetTableNa">N/A</ix:nonNumeric> <ix:nonNumeric name="ffd:PrevslyPdFlg" contextRef="offrl_1" format="ixt:booleanfalse" id="ixv-175">Fees to be Paid</ix:nonNumeric> </ix:hidden> <ix:references> <link:schemaRef xlink:href="https://xbrl.sec.gov/ffd/2025/ffd-2025.xsd" xlink:type="simple"/> </ix:references> <ix:resources> <xbrli:context id="rc"> <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0001701108</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:startDate>2025-08-12</xbrli:startDate> <xbrli:endDate>2025-08-12</xbrli:endDate> </xbrli:period> </xbrli:context> <xbrli:context id="offrl_1"> <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0001701108</xbrli:identifier> <xbrli:segment> <xbrldi:typedMember dimension="ffd:OfferingAxis"> <dei:lineNo>1</dei:lineNo> </xbrldi:typedMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2025-08-12</xbrli:startDate> <xbrli:endDate>2025-08-12</xbrli:endDate> </xbrli:period> </xbrli:context> <xbrli:unit id="USD"> <xbrli:measure>iso4217:USD</xbrli:measure> </xbrli:unit> <xbrli:unit id="pure"> <xbrli:measure>xbrli:pure</xbrli:measure> </xbrli:unit> <xbrli:unit id="Shares"> <xbrli:measure>xbrli:shares</xbrli:measure> </xbrli:unit> </ix:resources> </ix:header> </div> <div>
<table style="width: 99%; font-family: Arial, Helvetica, sans-serif; font-size: 20pt; text-align: center;">
<tr>
<td colspan="4" style="padding-bottom: .5em"> <p> <b>Calculation of Filing Fee Tables</b> </p> </td> </tr>
<tr>
<td style="padding-bottom: .25em"> <p> <b> <ix:nonNumeric name="ffd:FormTp" contextRef="rc" id="ixv-200">S-8</ix:nonNumeric> </b> </p> </td> </tr>
<tr>
<td style="padding-bottom: .25em"> <p> <b> <ix:nonNumeric name="dei:EntityRegistrantName" contextRef="rc" id="ixv-201">Spero Therapeutics, Inc.</ix:nonNumeric> </b> </p> </td> </tr> </table> </div> <div style="padding-bottom: 20px;">
<table style="float: center; width: 100%; text-align: left; ">
<tr style="font-family: Arial, Helvetica, sans-serif; font-size: 16px">
<th style="vertical-align: bottom; text-align: center; width: 90%; word-wrap: break-word"> <p style="margin: 0pt; text-align: center;"> <b>Table 1: Newly Registered Securities</b> </p> </th> </tr> </table>
<table style="font-family: Arial, Helvetica, sans-serif; font-size: 16px; float: center; width: 90%; text-align: center; border: 1px solid black; margin-left: auto; margin-right: auto;">
<tr style="background-color:#9ADAF6">
<th style="width: 2%;">
 </th>
<th style="width: 10%;"> <p style="margin: 0pt; text-align: center;"> <b>Security Type</b> </p> </th>
<th style="width: 10%;"> <p style="margin: 0pt; text-align: center;"> <b>Security Class Title </b> </p> </th>
<th style="width: 10%;"> <p style="margin: 0pt; text-align: center;"> <b>Fee Calculation Rule</b> </p> </th>
<th style="width: 10%;"> <p style="margin: 0pt; text-align: center;"> <b>Amount Registered</b> </p> </th>
<th style="width: 15%;"> <p style="margin: 0pt; text-align: center;"> <b>Proposed Maximum Offering Price Per Unit</b> </p> </th>
<th style="width: 15%;"> <p style="margin: 0pt; text-align: center;"> <b>Maximum Aggregate Offering Price</b> </p> </th>
<th style="width: 3%;"> <p style="margin: 0pt; text-align: center;"> <b>Fee Rate</b> </p> </th>
<th style="width: 15%;"> <p style="margin: 0pt; text-align: center;"> <b>Amount of Registration Fee</b> </p> </th> </tr>
<tr style="background-color:#E7E7E2">
<td style="text-align: center;"> 1 </td>
<td style="text-align: left;"> <ix:nonNumeric name="ffd:OfferingSctyTp" contextRef="offrl_1" id="ixv-202">Equity</ix:nonNumeric> </td>
<td style="text-align: left;"> <ix:nonNumeric name="ffd:OfferingSctyTitl" contextRef="offrl_1" id="ixv-203">Common Stock, par value $0.001 per share</ix:nonNumeric> </td>
<td style="text-align: center;"> <ix:nonNumeric name="ffd:FeesOthrRuleFlg" contextRef="offrl_1" format="ixt:booleantrue" id="ixv-204">Other</ix:nonNumeric> </td>
<td style="text-align: right;"> <ix:nonFraction name="ffd:AmtSctiesRegd" unitRef="Shares" decimals="0" format="ixt:numdotdecimal" contextRef="offrl_1" id="ixv-205">3,000,000</ix:nonFraction> </td>
<td style="text-align: right;"> <span>$</span> <ix:nonFraction name="ffd:MaxOfferingPricPerScty" unitRef="USD" decimals="INF" format="ixt:numdotdecimal" contextRef="offrl_1" id="ixv-206">2.19</ix:nonFraction> </td>
<td style="text-align: right;"> <span>$</span> <ix:nonFraction name="ffd:MaxAggtOfferingPric" unitRef="USD" decimals="INF" format="ixt:numdotdecimal" contextRef="offrl_1" id="ixv-207">6,570,000.00</ix:nonFraction> </td>
<td style="text-align: right;"> <ix:nonFraction name="ffd:FeeRate" unitRef="pure" decimals="INF" format="ixt:numdotdecimal" contextRef="offrl_1" id="ixv-208">0.0001531</ix:nonFraction> </td>
<td style="text-align: right;"> <span>$</span> <ix:nonFraction name="ffd:FeeAmt" unitRef="USD" decimals="INF" format="ixt:numdotdecimal" contextRef="offrl_1" id="ixv-209">1,005.87</ix:nonFraction> </td> </tr>
<tr>
<td colspan="5" style="vertical-align: top"> <p style="margin: 0pt; text-align: right">Total Offering Amounts:</p> </td>
<td>
 </td>
<td style="vertical-align: top; width: 16%;"> <p id="MaxAggtOfferingPrice" style="margin: 0pt; text-align: right"> <span>$</span> <ix:nonFraction name="ffd:TtlOfferingAmt" contextRef="rc" decimals="INF" format="ixt:numdotdecimal" unitRef="USD" id="ixv-210">6,570,000.00</ix:nonFraction> </p> </td>
<td>
 </td>
<td style="vertical-align: top; border-bottom: 1px black; width: 16%;"> <p id="TotalFeeAmt" style="margin: 0pt; text-align: right"> <span>$</span> <ix:nonFraction name="ffd:TtlFeeAmt" contextRef="rc" decimals="INF" format="ixt:numdotdecimal" unitRef="USD" id="ixv-211">1,005.87</ix:nonFraction> </p> </td> </tr>
<tr>
<td colspan="5" style="vertical-align: top"> <p style="margin: 0pt; text-align: right"> Total Fee Offsets: </p> </td>
<td>
 </td>
<td>
 </td>
<td>
 </td>
<td style="vertical-align: top"> <p id="TotalOffsetAmt" style="margin: 0pt; text-align: right"> <span>$</span> <ix:nonFraction name="ffd:TtlOffsetAmt" contextRef="rc" decimals="INF" format="ixt:numdotdecimal" unitRef="USD" id="ixv-212">0.00</ix:nonFraction> </p> </td> </tr>
<tr>
<td colspan="5" style="vertical-align: top"> <p style="margin: 0pt; text-align: right"> Net Fee Due: </p> </td>
<td>
 </td>
<td>
 </td>
<td>
 </td>
<td style="vertical-align: top"> <p id="NetFeeAmt" style="margin: 0pt; text-align: right"> <span>$</span> <ix:nonFraction name="ffd:NetFeeAmt" contextRef="rc" decimals="INF" format="ixt:numdotdecimal" unitRef="USD" id="ixv-213">1,005.87</ix:nonFraction> </p> </td> </tr> </table> </div> <div>
<table style="width: 90%; margin-left:auto; margin-right:auto; text-indent: 0px;"> <tbody>
<tr style="font-family: Arial, Helvetica, sans-serif; font-size: 16px; vertical-align: top;">
<td> <p style="margin:0pt;text-align:left; margin-bottom: 5px;"> <b>Offering Note</b> </p> </td>
<td/> </tr> </tbody> </table> </div> <div style="padding-bottom: 20px;">
<table style="width: 90%; margin-left:auto; margin-right:auto; text-indent: 0px;">
<tr style="font-family: Arial, Helvetica, sans-serif; font-size: 16px; vertical-align: top;">
<td style="width:10pt;"> <p style="margin:0pt;text-align:left;"> <sup style="vertical-align:top;line-height:120%;font-size:10px">1</sup> </p> </td>
<td colspan="7" style="white-space: pre-line;"> <ix:nonNumeric name="ffd:OfferingNote" escape="1" contextRef="offrl_1" id="ixv-214">(1) The number of shares of common stock, par value $0.001 per share ("Common Stock"), of Spero Therapeutics, Inc. (the "Registrant") stated above consists of additional shares of common stock available for issuance under the Spero Therapeutics, Inc. 2017 Stock Incentive Plan, as amended (the "2017 Plan"). The maximum number of shares which may be sold upon the exercise of such options or issuance of stock-based awards granted under the 2017 Plan are subject to adjustment in accordance with certain anti-dilution and other provisions of the 2017 Plan. Accordingly, pursuant to Rule 416 under the Securities Act of 1933, as amended (the "Securities Act"), this registration statement covers, in addition to the number of shares stated above, an indeterminate number of shares which may be subject to grant or otherwise issuable after the operation of any such anti-dilution and other provisions. (2) Estimated solely for the purpose of calculating the amount of the registration fee pursuant to Rule 457(c) and Rule 457(h) promulgated under the Securities Act. The offering price per share and the aggregate offering price for shares reserved for future grant or issuance under the 2017 Plan are based on the average of the high and the low price of the Registrant's Common Stock as reported on The Nasdaq Global Select Market as of a date (August 11, 2025) within five business days prior to filing this registration statement.</ix:nonNumeric> </td> </tr>
<tr>
<td colspan="7"> <hr style="width:100%;text-align:left;margin-left:0"/> </td> </tr> </table> </div> <div style="padding-bottom: 20px;">
<table style="float: center; width: 100%; text-align: left; ">
<tr style="font-family: Arial, Helvetica, sans-serif; font-size: 16px">
<th style="vertical-align: bottom; text-align: left; word-wrap: break-word"> <b>Table 2: Fee Offset Claims and Sources</b> </th>
<th style="vertical-align: bottom; word-wrap: break-word; text-align: right;"> <span style="-sec-ix-hidden: hiddenrcOffsetTableNa">&#9745;Not Applicable</span> </th> </tr> </table>
<table style="font-family: Arial, Helvetica, sans-serif; font-size: 16px; float: center; width: 100%; text-align: center; border: 1px solid black;">
<tr style="background-color:#9ADAF6">
<th style="width: 10%; text-align: left;">
 </th>
<th style="width: 8%; text-align: left;">
 </th>
<th style="width: 16%;"> Registrant or Filer Name </th>
<th style="width: 6%;"> Form or Filing Type </th>
<th style="width: 7%;"> File Number </th>
<th style="width: 6%;"> Initial Filing Date </th>
<th style="width: 6%;"> Filing Date </th>
<th style="width: 6%;"> Fee Offset Claimed </th>
<th style="width: 6%;"> Security Type Associated with Fee Offset Claimed </th>
<th style="width: 8%;"> Security Title Associated with Fee Offset Claimed </th>
<th style="width: 6%;"> Unsold Securities Associated with Fee Offset Claimed </th>
<th style="width: 9%;"> Unsold Aggregate Offering Amount Associated with Fee Offset Claimed </th>
<th style="width: 6%;"> Fee Paid with Fee Offset Source </th> </tr>
<tr>
<td colspan="14" style="text-align: center"> <b>Rule 457(p)</b> </td> </tr>
<tr style="background-color:#E7E7E2">
<td style="text-align: left;"> Fee Offset Claims </td>
<td> N/A </td>
<td style="text-align: left;"> N/A </td>
<td> N/A </td>
<td> N/A </td>
<td> N/A </td>
<td> N/A </td>
<td style="text-align: right;"> N/A </td>
<td style="text-align: left;"> N/A </td>
<td style="text-align: left;"> N/A </td>
<td style="text-align: right;"> N/A </td>
<td style="text-align: right;"> N/A </td>
<td style="text-align: right;"> N/A </td> </tr>
<tr style="background-color:#E7E7E2">
<td style="text-align: left;"> Fee Offset Sources </td>
<td> N/A </td>
<td style="text-align: left;"> N/A </td>
<td> N/A </td>
<td> N/A </td>
<td> N/A </td>
<td> N/A </td>
<td style="text-align: right;"> N/A </td>
<td style="text-align: left;"> N/A </td>
<td style="text-align: left;"> N/A </td>
<td style="text-align: right;"> N/A </td>
<td style="text-align: right;"> N/A </td>
<td style="text-align: right;"> N/A </td> </tr> </table> </div> </body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>5
<FILENAME>g24105dsp1.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 g24105dsp1.jpg
M_]C_X  02D9)1@ !  $ 8 !@  #__@ ?3$5!1"!496-H;F]L;V=I97,@26YC
M+B!6,2XP,0#_VP"$  @&!@<&!0@'!P<*"0@*#18.#0P,#1L3%! 6(!PB(1\<
M'QXC*#,K(R8P)AX?+#TM,#4V.3HY(BL_0SXX0S,X.3<!"0H*#0L-&@X.&C<D
M'R0W-S<W-S<W-S<W-S<W-S<W-S<W-S<W-S<W-S<W-S<W-S<W-S<W-S<W-S<W
M-S<W-S<W-__$ :(   $% 0$! 0$!           ! @,$!08'" D*"P$  P$!
M 0$! 0$! 0        $" P0%!@<("0H+$  " 0,# @0#!04$!    7T! @,
M!!$%$B$Q008346$'(G$4,H&1H0@C0K'!%5+1\"0S8G*""0H6%Q@9&B4F)R@I
M*C0U-C<X.3I#1$5&1TA)2E-455976%E:8V1E9F=H:6IS='5V=WAY>H.$A8:'
MB(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4U=;7
MV-G:X>+CY.7FY^CIZO'R\_3U]O?X^?H1  (! @0$ P0'!00$  $"=P ! @,1
M! 4A,08205$'87$3(C*!"!1"D:&QP0DC,U+P%6)RT0H6)#3A)?$7&!D:)B<H
M*2HU-C<X.3I#1$5&1TA)2E-455976%E:8V1E9F=H:6IS='5V=WAY>H*#A(6&
MAXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&Q\C)RM+3U-76
MU]C9VN+CY.7FY^CIZO+S]/7V]_CY^O_  !$( "4!#0,!$0 "$0$#$0'_V@ ,
M P$  A$#$0 _ /?)98X(VDED6.-1EF8X % $5K>VU]#YUI<13Q9QOC<,/S%
M$] !0 4 % !0 4 % !0 4 % !0 4 % !0 4 % !0 V25(4+R.J(.I8X H =G
MTH * "@ H * "@ H * *VHZA;:5IUQ?WDGEVUNADD;!.%'7@4 2P3QW-O'/"
MX>*10Z,.A!&0: ![B**:*%Y LDI(12>6P,G'X4 24 <Y=>(+^YU"ZL]!TZ.]
M-BP2YDFF\I0^,[%.#DX//89% &GH>KQZYH\&H11O$)-RE'P2K*Q5AD<'D'F@
M#'\3V5Y=:WH;&6(Z6D^V>V=-WG,0=N?88/XG/:@"=(+71_%\$-I$L*:E;R,Z
M(,+OC*X;'J0Y'X"@#H: "@ H * "@ H * *>IWYTRQ>Z%G<W>PC]U;)O<Y/8
M9&: ,&Q\7RW6I7T1TC41% (PJ?9L.I());G_ '<4 ;^GWK7]MYS65Q:<X"7"
M@-]< F@"W0!S>C>*TUCQ1J6EQ0$6]J@,4_/[TAF23'LK #\Z .DH * "@ H
M* .2UN)]=GU)&LS=VFEQ'9;=KFX*9 .>" "!Z98^E '0V2#3M&MH[B0*+>!5
MD=VX&U>23^% $]O<P7EO'<6TR302#<DD;!E8>H(H EH :\B1C+NJC.,DXYH
MS9/$6D0Z_'H4E]&FI2Q^8D!SEASWZ9X/'6@"X]]:QW\5BUP@NI4:1(L_,5&,
MG'IR* )?.B\[R?,3S=N[9N&['KCTH ?0!SOC:0OX<ETR)]MSJC"QB]07X8_@
MNYOPH V[*U2QL;>TB_U<$:QKGT P/Y4 9-S<1S^-K"R7E[:TEN'_ -G<RHOY
M_/\ E0!NT >>>'-"OM1&O6MQJLL%A_:MSOBM@%:4,V2#)U YQQ@^] '>65E;
M:=90V=G"L-O"H2.-1@*!0!B>([;4I+[339:DL'F7 54DA#JK"-SN'0]!TS0!
M/I&A7%G>-?:EJ4FHWI3RT=D5%C4G)"J.F<#)]A0!5O?&MC9:ZNF-;7#HLT=O
M-=*H\J*63[BDYZGCITR* -774L'T2[35)1%8%,3.6V@+WR?3M0!!-=:;X5\.
MHQ9EL[= D*!B[/V55SRQ/ % %"#Q+J%MI5YJ>O:0-/MH]GD(LWFRR%C@*5
M#9(&,GK0 S3_ !O:SZ-=W^I6<VFO9W:V<\,A#%'8H%Y'4?O%/YT =1D<<T <
ME>^.E@U6_P!/M=&O;A]./^E3';'%&NW=G<3SQSTH C\->*]6U;63;ZGIT-A;
M2V?VR!=S&0)OV@OG &>N.U %7PQK\:/XEUC46$44K+?1 \-]F\O"''T0_B:
M*7@[Q/J?]B:Q=ZA<&[D>^6'3_-.!*[(OR*0/NAR?7 !]* -K3-9NK/P-J6K:
MC?++-$]RR2/A1\C,H '897@=>: .5\ V<WA[5])GU%S#_:NENY\Z8MAE:-LY
M/0MO8X'& /2@ UWQYK\M]J5]X?E@-AI,C1M$Z;H[G QPPY+%N J]ADGG% &]
MX?\ $E__ &OX@E\1W]K%#IOEP)'"I12Q0.QP223\R@?0T 5+/QHVI:#HEM>Z
MI#97NHDF>=1M\M"S!%']UVP ,],-Z4 0R>(+?2_"6L36-Y/';-J0@@)E,DWE
M HDC1[B2>DA'IUH TO">I:7H/AZ2:XU;S%NIFN([<SFX>!2!B/.22>,GW)H
ML:)XITNUNM4M[Z<V1:8W41NE\HR1N >,]2#D8Z]* #4=3M/%=G9V1CGBTJ^N
MO*DDE7RQ<(J,Q49Y )4#MD9H QM>\+:1+XCLH-$DNXK@@&Z@LKIHXA BXVL%
M/RDG:!C'<^M '/>&=%@EFT9/#FJZG;:E.IEUB2.4[(E()*D."-P;"COC)H J
M2VFH^([_ %ZVTV"_UJW65+6UFN[G=%$<9DER3@/@@+@< T =.++7H/$UQ?:E
MH]QJ%]YR2VL=LX2S0B,*&9C\Q(Y'3U('- &U+X=URTOK76+'['<:O)%*EU)<
MLP52^PKLP/NKM( XZYZDT 8UCIOCD:U!>2:3IBW$3L\MW-<$M,2A7'RCA!G(
M7V% ';Z7::_%=&;5-5MIXBI'D06OE@'C!#%B?6@#/U?1==O/$=IJ5E>V,<5M
M$Z(D\#.5+'EAA@,X &>W/K0!)!;>,?M"B?4]+$ 8;BEJ^\COC+8!_.@"M<+K
M&F>)]2O;/0Q?M=K$D<WVA8PB*OW3D$_>+'@=Z -#3HO$TE\EQJ=U8PVW.;2W
MB9STX_>$CV_AH OZ7IPTV&X3?O,UQ+.3C'WV)Q^ ('X4 7J ,O53C4M%&.#=
MM^'[F2@"76[XZ;HMU=J 7C3Y ?[QX'ZD4 <YKV@RV/@FWM[57NI;&Z@O)1C+
MS;)1)(?J<$B@#.\4ZQ)XX\,:CHGA:%[F2XA99;B1#''&,9V@L!EB>,#IG)H
MC33-9\0M;Z@]A+:/HGD&QMKD@":15/FYQG&>%![8SW- %O6U\4>*=/&F+H0T
MMA+'-]JFN5<1M&X=<*O)Y44 9Q\*^(-9TN/3I+=-*\F=;V:XDE$S7=R.03C&
M%R ?P Q0!JZAI_BVYU+3-;:&S$VG,^+&&5OWRNNULN>.."!B@"U9>'K_ %&#
M6;O5-MC=ZJ(QY,)#B#R_NDGHQZ$]NU #)/ T]Y<-<:AX@O)II4,,Y15C$D.<
M^7@#@9SR.3F@#6UKPAH'B%8AJFF0W!B38A.057TR.U %30O")TJ:&2]U*341
M:+Y=FLD:H+=<8.-O4XP,G^IH =>^!M$O6NFDA<F?S&"F0E(W<$,ZH3@-R3G%
M &B-"L)=(L].OH([V*U1%4S(#DJ,;L>M $,7A/0H-6&J1:9"EXIR' X!QC('
M0''&: ++:'I;ZK_:C:? ;_;M\\H-^/K0!0;P3X;>QN[)](@:WNY?.F0C.Y\Y
M!]L9./2@";2/">@Z%(TFF:7!;NPP65<G'ID]J -.*SMH"QAMXHRQR=J 9- "
MRVT$Y4S0I(5.5W*#B@"'4=+LM6LFL[^V2>W8@E&'&1T/M0 W3-(T_1;7[-IU
MI';19R0@ZGU)[T /OP\>FW;6\>9?*8J!U+8.* .8^%NG/IOP^TU9H&AN)5,D
MBN,-G.!D>NU5H [$<4 % !0 4 % !0 4 % !0 4 ,DACE>)G0,T3;T)_A.",
M_D2/QH ;<6\-U"89XUDC)!*L,C@Y'Z@4 2T (%"C"@ >U "T % !0 4 % !0
M 4 % !0 4 % !0 4 % !0 4 % !0 4 % !0 4 % !0 4 % !0 4 % !0!__9

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>6
<FILENAME>g24105g0811220021442.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 g24105g0811220021442.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!# 0D)"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"  0 'L# 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#K=1TC3?"?
MQ6LKIM/M?['\20&QF1H5*1W Y7C& ''!'<Y)K&T_0+>W\2ZM\.9+"-K2YOX]
M4BE:,<6?WF7=UR& C'?#M7HGC_PZWB;P;?6,&1>Q@7%FXZK,GS+CZ]/QKSB[
MNM<N-(T7XI_9)6U&&6. V(;&ZU8>61CL6D8M[!E]* .BUK3K47NO>(-,L[&!
MO#MB8+)OLJ,GG*OFOQQT&Q >V7Q1K7BOQ!IWPCT_Q3#>VYU"9()9%:V'EGS2
MHV@9R-N[KGFMK5M.DTCX6:E8N)+B]FL9A)Y4;.TUQ*K%L!03R[&N0\1QW$_P
M$TO3(+&^EOQ#:1FV2TD,@:-D+@KMR,8/6@#U*Z6[AT.7%Z!=1PD_:3$",@9S
MMZ?A7,?#?Q=>>)?#URVMB*#5;&8I=JB[%"D;T;&> 5/KV-6=9\5VTNE7-O96
M>HSR2VDS$BQF79\AVCE1EBQ4!1SR3VKDSX=U&77M&GTR.5-.UW3$LM9W1LAC
M$*CD@@$,RAH^?6@#<\%^)]7\6:QXD$DJVMG9RK'91B ;]CKN21B3R<8./>J?
MA77?$_B#PPFK2:Q817)OGME@>U"I+LDV[0=V0S 'Z&I?!TXL_&GC>>>WNH;6
M:>&6WD>UD59$2/:VWY><'C _"N<\"VVCZ7X;^VZMHFHQZQ:7\]U#MTV;SGRS
M% #LY!#8_P * .LU#5O$,GQ-/ANSU.WM[632S?1LUF'9&#[-I^897OV-<WK6
MN/XS^!VN:CJEA;+>V32PB2-<H7C8#S(R>0#]?6I]=TO_ (23XHK'=6^H6L$V
M@-:&YA255@N&?<%\Q0 2 ?7!JC>76J0_"#5O"&HZ->IK-I!]DA6ULG:*[7<-
MLD95=O(Z]\YSUH ZK0?$7@F'P?8:;)?:4L!M(Q-;L%VL=HW;EQ@G/7-97P<:
MPTSX93:J\<<:K-<R3SA?F9$9L9/4@ <5VGA_4(8_!UA<2+/&MO:QI*CP.'1E
M4 C9C=D'T%>8^$5N'^'=CX6N;/4[2:^U1UNBUG*ABMS(9"=Q7 W !!_O>U '
M<?#_ ,4:CXFTW5(M6B6TU:RNVBEA5?\ 5JP#1\?0X_"CP%K6KZU<^(!J=W%,
MFG:E+81". 1[@F/G/)Y.>G2L6TM)O"?Q<ED5M2O-/U>P475S)$\@CG0X3<RK
MC!7@4WP+JT6BR>+'O[34HEN-9GNK?_B7SGSHF P5PG.<=* -/^U]>N?B1JOA
M^/58+>RMK%+R-S:AF&YL;22<8&.M=9HCWDFC6SW]Q!<7#*29[==J2+D[6 [9
M7!Q[UYD8].UCXFZA?Z[H=VVGW&CPQ S6$LBI+G+)D*?F .,CTKK+7Q)>06L5
=OI7AC4KFQ@40PS2GRF=4^7.U@".G<<CGO0!__]D!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>7
<FILENAME>g24105g0811220021649.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 g24105g0811220021649.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!# 0D)"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"  8 ( # 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
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
('3H!110!_]D!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>8
<FILENAME>g24105g0811220022670.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 g24105g0811220022670.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!# 0D)"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"  ; FT# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
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
M6TMIY<BW)MI9"Q,:MQCD#OGC/TIMGXJN+HPQ?8HQ/<331PJ)3@B/J2<=>E;
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
M(0HN4RBAL@<]2>QQVK5;3+%Y(G:TAW1?<.T?+4C6ELZA6@C*C  *CC!R/UH
MGHI** ,77[BZBEL8K9IAYKL&$.-QP/>J4>N7RHUG.B_:$C^:5>0&!&0>V>>Q
MKI6BC=T=D5F0Y4D<CZ57.FV1N6N3:Q&9A@N5Y/\ G H IZ?K$EW<1QO"J1S(
MS1,'R2%(!W#MU%4YM<9/$!A67_1P3;[=AQYF,[L_F*VH;"TMYY)X;>-)9/O,
MJX)IYMH#$8C"AC+;BNT8SG.?KF@#"MM;OB%B:")Y'*K$Q?&<IN);CBMJPNQ?
M6,5R%*^8N=I[5'+I5A,K"2TB8, #\OITJTB)%&L<:A44855& !0 ^JFIO,FF
MSM;.B3;?D9S@ U:ILL4<\312HKQN,,K#((H YE=?>QMV1O-GG1SYD4WWT4 $
M\KP1SG/3FM2TU6:>^$3VX2)VD6-P^22AP<CWS4O]B:9Y*Q?88#&I+ %<\GU]
M:MK!$K*5C0%22"!TSU_.@#!N+^\BU;47 N)(;4*51"H3[@.#GGJ:=-XCEAN9
M(/LJNR1DDHYQO !VYQCO6X;>%O,S$A\W_697[W&.?6H3IEBUPUPUI"96&"Y4
M9(H SAK5T9Q;?9(_M"EBX,N%VC;T/K\PJ)O$36[Q^9;M]G*,QE8\DC=\H[9^
M7I[UKSZ=9W)4S6T3E6W@E>_'^ _(4ATVR,ZSFUB\Q!A6VCC_ #D_G0!F/KEV
MJ*OV.+SBC2X\X;=@ )Y]?FZ5LV\RW-M%.H(610P!Z\U5_L733#Y1LH/+W;]N
MWO\ YXJ\.!@# '04 +63K6H2Z6UO< YA;?&R>KE<I^JX_P"!5JU'-!#<HJSQ
M)(JL' =<@,#D'Z@T <TFLWUKY=M*ZS75ONCF!!'F,2-AP,GE0QXJ6?Q'.UNQ
M2V\H26AEB=CU?RR^!VXQTSGOTK:FTZRN&D:6UB9I"I=BHRVWID^V3^=(NEV"
MR!UM(0P3RQA!C;C&,?3CZ<4 9LNM74.]9+4?:(R5\M)/E;_5XY/_ %T_0U'/
MXBN(5D!LT,L"N\Z^;@8#;?E/?/6MQK:!V+-#&6/))4<]/\!^0KD_%J(-7TB'
MRT\N>8B0;1SEES]/J* -%M?O(EEWVD1:+SI&Q)C]U&VWC_:/I5;4?%\FF+'+
M+8%H9I)$B*N-Q"-@D@],\5NR:583-NDM(F/F&3E?XCC)_' SZXI\VGV=P%$U
/K#(%)(#H#@DY/YF@#__9

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>10
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Submission<br></strong></div></th>
<th class="th"><div>Aug. 12, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_SubmissionLineItems', window );"><strong>Submission [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_dei_EntityCentralIndexKey', window );">Central Index Key</a></td>
<td class="text">0001701108<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Registrant Name</a></td>
<td class="text">Spero Therapeutics, Inc.<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_FormTp', window );">Form Type</a></td>
<td class="text">S-8<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_SubmissnTp', window );">Submission Type</a></td>
<td class="text">S-8<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_FeeExhibitTp', window );">Fee Exhibit Type</a></td>
<td class="text">EX-FILING FEES<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingTableNa', window );">Offering Table N/A</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_ffd_OffsetTableNa', window );">Offset Table N/A</a></td>
<td class="text">N/A<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<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_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_ffd_FeeExhibitTp">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">ffd_FeeExhibitTp</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:feeExhibitTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_FormTp">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">ffd_FormTp</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd: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_ffd_OfferingTableNa">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">ffd_OfferingTableNa</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:naItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_OffsetTableNa">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">ffd_OffsetTableNa</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:naItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_SubmissionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">ffd_SubmissionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</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_ffd_SubmissnTp">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">ffd_SubmissnTp</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd: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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>11
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Offerings - Offering: 1<br></strong></div></th>
<th class="th">
<div>Aug. 12, 2025 </div>
<div>USD ($) </div>
<div>shares</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingTable', window );"><strong>Offering:</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_ffd_PrevslyPdFlg', window );">Fee Previously Paid</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_FeesOthrRuleFlg', window );">Other Rule</a></td>
<td class="text">true<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingSctyTp', window );">Security Type</a></td>
<td class="text">Equity<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingSctyTitl', window );">Security Class Title</a></td>
<td class="text">Common Stock, par value $0.001 per share<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_AmtSctiesRegd', window );">Amount Registered | shares</a></td>
<td class="nump">3,000,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_ffd_MaxOfferingPricPerScty', window );">Proposed Maximum Offering Price per Unit</a></td>
<td class="nump">2.19<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_MaxAggtOfferingPric', window );">Maximum Aggregate Offering Price</a></td>
<td class="nump">$ 6,570,000.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_ffd_FeeRate', window );">Fee Rate</a></td>
<td class="nump">0.01531%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_FeeAmt', window );">Amount of Registration Fee</a></td>
<td class="nump">$ 1,005.87<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingNote', window );">Offering Note</a></td>
<td class="text">(1) The number of shares of common stock, par value $0.001 per share ("Common Stock"), of Spero Therapeutics, Inc. (the "Registrant") stated above consists of additional shares of common stock available for issuance under the Spero Therapeutics, Inc. 2017 Stock Incentive Plan, as amended (the "2017 Plan"). The maximum number of shares which may be sold upon the exercise of such options or issuance of stock-based awards granted under the 2017 Plan are subject to adjustment in accordance with certain anti-dilution and other provisions of the 2017 Plan. Accordingly, pursuant to Rule 416 under the Securities Act of 1933, as amended (the "Securities Act"), this registration statement covers, in addition to the number of shares stated above, an indeterminate number of shares which may be subject to grant or otherwise issuable after the operation of any such anti-dilution and other provisions. (2) Estimated solely for the purpose of calculating the amount of the registration fee pursuant to Rule 457(c) and Rule 457(h) promulgated under the Securities Act. The offering price per share and the aggregate offering price for shares reserved for future grant or issuance under the 2017 Plan are based on the average of the high and the low price of the Registrant's Common Stock as reported on The Nasdaq Global Select Market as of a date (August 11, 2025) within five business days prior to filing this registration statement.<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_AmtSctiesRegd">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 securities being 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 Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_AmtSctiesRegd</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:nonNegativeDecimal2ItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_FeeAmt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amount of registration fee (amount due after offsets).</p></div>
<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_FeeAmt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:nonNegative1TMonetary2ItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_FeeRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 rate per dollar of fees that public companies and other issuers pay to register their securities with the Commission.</p></div>
<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_FeeRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</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_ffd_FeesOthrRuleFlg">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Checkbox indicating whether filer is using a rule other than 457(a), 457(o), or 457(f) to calculate the registration fee due.</p></div>
<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_FeesOthrRuleFlg</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</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_ffd_MaxAggtOfferingPric">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 aggregate offering price for the offering that is being 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 Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_MaxAggtOfferingPric</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:nonNegative100TMonetary2ItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_MaxOfferingPricPerScty">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 offering price per share/unit being 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 Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_MaxOfferingPricPerScty</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:nonNegativeDecimal4lItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_OfferingNote">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_OfferingNote</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</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_ffd_OfferingSctyTitl">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 title of the class of securities being registered (for each class being 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 Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_OfferingSctyTitl</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd: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_ffd_OfferingSctyTp">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Type of securities: "Asset-backed Securities", "ADRs/ADSs", "Debt", "Debt Convertible into Equity", "Equity", "Face Amount Certificates", "Limited Partnership Interests", "Mortgage Backed Securities", "Non-Convertible Debt", "Unallocated (Universal) Shelf", "Exchange Traded Vehicle Securities", "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/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_OfferingSctyTp</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:securityTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_OfferingTable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">ffd_OfferingTable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</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_ffd_PrevslyPdFlg">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">ffd_PrevslyPdFlg</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</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_ffd_OfferingAxis=1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">ffd_OfferingAxis=1</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>12
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Fees Summary<br></strong></div></th>
<th class="th">
<div>Aug. 12, 2025 </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_ffd_FeesSummaryLineItems', window );"><strong>Fees Summary [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_ffd_TtlOfferingAmt', window );">Total Offering</a></td>
<td class="nump">$ 6,570,000.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_ffd_TtlFeeAmt', window );">Total Fee Amount</a></td>
<td class="nump">1,005.87<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_TtlOffsetAmt', window );">Total Offset Amount</a></td>
<td class="nump">0.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_ffd_NetFeeAmt', window );">Net Fee</a></td>
<td class="nump">$ 1,005.87<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_FeesSummaryLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_FeesSummaryLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</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_ffd_NetFeeAmt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_NetFeeAmt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</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_ffd_TtlFeeAmt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_TtlFeeAmt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:nonNegative1TMonetary2ItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_TtlOfferingAmt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_TtlOfferingAmt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:nonNegative1TMonetary2ItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_TtlOffsetAmt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_TtlOffsetAmt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:nonNegative1TMonetary2ItemType</td>
</tr>
<tr>
<td><strong> Balance 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>13
<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>14
<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>16
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.25.2</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>2</ContextCount>
  <ElementCount>21</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>1</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>3</UnitCount>
  <MyReports>
    <Report instance="d24105dexfilingfees.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>995210 - Document - Submission</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ffd/role/document/submissionTable</Role>
      <ShortName>Submission</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="d24105dexfilingfees.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>995211 - Document - Offerings</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ffd/role/document/feesOfferingTable</Role>
      <ShortName>Offerings</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="d24105dexfilingfees.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>995215 - Document - Fees Summary</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ffd/role/document/feesSummaryTable</Role>
      <ShortName>Fees Summary</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>3</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="EX-FILING FEES" original="d24105dexfilingfees.htm">d24105dexfilingfees.htm</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="3">http://xbrl.sec.gov/dei/2025</BaseTaxonomy>
    <BaseTaxonomy items="20">http://xbrl.sec.gov/ffd/2025</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>false</HasPresentationLinkbase>
  <HasCalculationLinkbase>false</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>18
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "d24105dexfilingfees.htm": {
   "dts": {
    "inline": {
     "local": [
      "d24105dexfilingfees.htm"
     ]
    },
    "schema": {
     "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/lrr/arcrole/deprecated-2009-12-16.xsd",
      "https://www.xbrl.org/dtr/type/2024-01-31/types.xsd",
      "https://xbrl.sec.gov/dei/2025/dei-2025.xsd",
      "https://xbrl.sec.gov/ffd/2025/ffd-2025.xsd"
     ]
    }
   },
   "keyStandard": 21,
   "keyCustom": 0,
   "axisStandard": 1,
   "axisCustom": 0,
   "memberStandard": 1,
   "memberCustom": 0,
   "hidden": {
    "total": 8,
    "http://xbrl.sec.gov/ffd/2025": 6,
    "http://xbrl.sec.gov/dei/2025": 2
   },
   "contextCount": 2,
   "entityCount": 1,
   "segmentCount": 1,
   "elementCount": 107,
   "unitCount": 3,
   "baseTaxonomies": {
    "http://xbrl.sec.gov/ffd/2025": 20,
    "http://xbrl.sec.gov/dei/2025": 3
   },
   "report": {
    "R1": {
     "role": "http://xbrl.sec.gov/ffd/role/document/submissionTable",
     "longName": "995210 - Document - Submission",
     "shortName": "Submission",
     "isDefault": "true",
     "groupType": "Fee_Exhibit",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": null,
     "uniqueAnchor": null
    },
    "R2": {
     "role": "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable",
     "longName": "995211 - Document - Offerings",
     "shortName": "Offerings",
     "isDefault": "false",
     "groupType": "Fee_Exhibit",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "2",
     "firstAnchor": {
      "contextRef": "offrl_1",
      "name": "ffd:FeesOthrRuleFlg",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d24105dexfilingfees.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "offrl_1",
      "name": "ffd:FeesOthrRuleFlg",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d24105dexfilingfees.htm",
      "first": true,
      "unique": true
     }
    },
    "R3": {
     "role": "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable",
     "longName": "995215 - Document - Fees Summary",
     "shortName": "Fees Summary",
     "isDefault": "false",
     "groupType": "Fee_Exhibit",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "3",
     "firstAnchor": {
      "contextRef": "rc",
      "name": "ffd:TtlOfferingAmt",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d24105dexfilingfees.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "rc",
      "name": "ffd:TtlOfferingAmt",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d24105dexfilingfees.htm",
      "first": true,
      "unique": true
     }
    }
   },
   "tag": {
    "ffd_AggtRedRpPricFsclYr": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "AggtRedRpPricFsclYr",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Redeemed or Repurchased Price, Fiscal Year",
        "terseLabel": "Aggregate Redeemed or Repurchased, FY"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_AggtRedRpPricPrrFsclYr": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "AggtRedRpPricPrrFsclYr",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Redeemed or Repurchased Price, Prior Fiscal Year",
        "terseLabel": "Aggregate Redeemed or Repurchased, Prior FY"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_AggtSalesPricFsclYr": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "AggtSalesPricFsclYr",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Sales Price, Fiscal Year",
        "terseLabel": "Aggregate Sales Price"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_AmtRedCdts": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "AmtRedCdts",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amount of Redemption Credits",
        "terseLabel": "Redemption Credits"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_AmtSctiesRcvd": {
     "xbrltype": "nonNegativeDecimal2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "AmtSctiesRcvd",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amount of Securities Received",
        "terseLabel": "Amount of Securities Received",
        "documentation": "Amount of securities to be received by the registrant (or cancelled upon issuance of securities to be registered on the form)"
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "ffd_AmtSctiesRegd": {
     "xbrltype": "nonNegativeDecimal2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "AmtSctiesRegd",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amount of Securities Registered",
        "terseLabel": "Amount Registered",
        "documentation": "The amount of securities being registered."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_CeasedOprsDt": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CeasedOprsDt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Ceased Operations Date",
        "terseLabel": "Ceased Operations Date"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_CfwdFormTp": {
     "xbrltype": "formTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CfwdFormTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Carry Forward Form Type",
        "terseLabel": "Carry Forward Form Type",
        "documentation": "The Form Type of the prior shelf registration statement from which unsold securities are carried forward under 415(a)(6). This should be an EDGAR submission type (S-3, S-3/A, S-3ASR, etc.), which means there is a fixed set of possible responses. Note that while the XBRL response should be an EDGAR submission type, the human-readable Ex. 107 could include a simpler label (e.g., \"Form S-3\" in the human-readable and \"S-3ASR\" in the XBRL)."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "ffd_CfwdPrevslyPdFee": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CfwdPrevslyPdFee",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Carry Forward Previously Paid Fee",
        "terseLabel": "Filing Fee Previously Paid in Connection with Unsold Securities to be Carried Forward",
        "documentation": "The fee previously paid in connection with the securities being brought forward from the prior shelf registration statement on which unsold securities are carried forward under 415(a)(6)."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "ffd_CfwdPrrFctvDt": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CfwdPrrFctvDt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Carry Forward Prior Effective Date",
        "terseLabel": "Carry Forward Initial Effective Date",
        "documentation": "The initial effective date of the prior shelf registration statement from which unsold securities are carried forward under 415(a)(6)."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "ffd_CfwdPrrFileNb": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CfwdPrrFileNb",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Carry Forward File Number",
        "terseLabel": "Carry Forward File Number",
        "documentation": "The EDGAR File Number of the prior shelf registration statement from which unsold securities are carried forward under 415(a)(6). If the prior registration statement has a Securities Act File Number and an Investment Company Act File Number, the Securities Act File Number should be used."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "ffd_CmbndPrspctsItemAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CmbndPrspctsItemAxis",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Combined Prospectus Item [Axis]",
        "terseLabel": "Combined Prospectus",
        "documentation": "A sequence number (1, 2, 3...) used to distinguish different references to earlier prospectuses on a single fee bearing submission."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_CmbndPrspctsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CmbndPrspctsLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Combined Prospectus [Line Items]",
        "terseLabel": "Combined Prospectus:"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_CmbndPrspctsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CmbndPrspctsTable",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Combined Prospectus [Table]",
        "terseLabel": "Combined Prospectus Table"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_CombinedProspectusTableNa": {
     "xbrltype": "naItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CombinedProspectusTableNa",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Combined Prospectus Table [N/A]",
        "terseLabel": "Combined Prospectus Table N/A"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_CshPdByRegistrantInTx": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CshPdByRegistrantInTx",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash Paid by Registrant in Transaction",
        "terseLabel": "Cash Consideration Paid",
        "documentation": "Amount of cash consideration paid by registrant in connection with the exchange or other transaction being registered (in a 457(f) calculation)."
       }
      }
     },
     "auth_ref": [
      "r12"
     ]
    },
    "ffd_CshRcvdByRegistrantInTx": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CshRcvdByRegistrantInTx",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash Received by Registrant in Transaction",
        "terseLabel": "Cash Consideration Received",
        "documentation": "Amount of cash consideration received by registrant in connection with the exchange or other transaction being registered (in a 457(f) calculation)."
       }
      }
     },
     "auth_ref": [
      "r12"
     ]
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Central Index Key",
        "terseLabel": "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": [
      "r0"
     ]
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Registrant Name",
        "terseLabel": "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": [
      "r0"
     ]
    },
    "ffd_FeeAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeeAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable",
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Amount",
        "terseLabel": "Amount of Registration Fee",
        "documentation": "Total amount of registration fee (amount due after offsets)."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FeeExhibitTp": {
     "xbrltype": "feeExhibitTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeeExhibitTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Exhibit Type",
        "terseLabel": "Fee Exhibit Type"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_FeeIntrstAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeeIntrstAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Interest Amount",
        "terseLabel": "Interest Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FeeNote": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeeNote",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Note",
        "terseLabel": "Fee Note"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FeeNoteMaxAggtOfferingPric": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeeNoteMaxAggtOfferingPric",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Note Maximum Aggregate Offering Price",
        "terseLabel": "Fee Note MAOP"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FeeRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeeRate",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable",
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Rate",
        "terseLabel": "Fee Rate",
        "documentation": "The rate per dollar of fees that public companies and other issuers pay to register their securities with the Commission."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FeesOthrRuleFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeesOthrRuleFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fees, Other Rule [Flag]",
        "terseLabel": "Other Rule",
        "documentation": "Checkbox indicating whether filer is using a rule other than 457(a), 457(o), or 457(f) to calculate the registration fee due."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FeesSummaryLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeesSummaryLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Fees Summary [Line Items]",
        "terseLabel": "Fees Summary:"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FnlPrspctsFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FnlPrspctsFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Final Prospectus [Flag]",
        "terseLabel": "Final Prospectus"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FormTp": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FormTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Form Type",
        "terseLabel": "Form Type"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_GnlInstrIIhiFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "GnlInstrIIhiFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "General Instruction II.H,I [Flag]",
        "terseLabel": "General Instruction II.H,I"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_IssrBizAdrCity": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "IssrBizAdrCity",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Issuer Business Address, City",
        "terseLabel": "City"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_IssrBizAdrStatOrCtryCd": {
     "xbrltype": "stateOrCountryCodeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "IssrBizAdrStatOrCtryCd",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Issuer Business Address, State or Country Code",
        "terseLabel": "State or Country Code"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_IssrBizAdrStrt1": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "IssrBizAdrStrt1",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Issuer Business Address, Street 1",
        "terseLabel": "Street 1"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_IssrBizAdrStrt2": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "IssrBizAdrStrt2",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Issuer Business Address, Street 2",
        "terseLabel": "Street 2"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_IssrBizAdrZipCd": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "IssrBizAdrZipCd",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Issuer Business Address, Zip Code",
        "terseLabel": "Zip Code"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_IssrNm": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "IssrNm",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Issuer Name",
        "terseLabel": "Issuer Name"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_MaxAggtOfferingPric": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "MaxAggtOfferingPric",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum Aggregate Offering Price",
        "terseLabel": "Maximum Aggregate Offering Price",
        "documentation": "The maximum aggregate offering price for the offering that is being registered."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_MaxOfferingPricPerScty": {
     "xbrltype": "nonNegativeDecimal4lItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "MaxOfferingPricPerScty",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum Offering Price per Security",
        "terseLabel": "Proposed Maximum Offering Price per Unit",
        "documentation": "The maximum offering price per share/unit being registered."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_NetFeeAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "NetFeeAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Fee Amount",
        "terseLabel": "Net Fee"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_NetSalesAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "NetSalesAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Sales Amount",
        "terseLabel": "Net Sales"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_NrrtvDsclsr": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "NrrtvDsclsr",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Narrative Disclosure",
        "terseLabel": "Narrative Disclosure"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_NrrtvMaxAggtAmt": {
     "xbrltype": "nonNegativeDecimal2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "NrrtvMaxAggtAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Narrative Disclosure, Maximum Aggregate Offering Amount",
        "terseLabel": "Narrative - Max Aggregate Offering Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_NrrtvMaxAggtOfferingPric": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "NrrtvMaxAggtOfferingPric",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Narrative Disclosure, Maximum Aggregate Offering Price",
        "terseLabel": "Narrative - Max Aggregate Offering Price"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OfferingAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingAxis",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering [Axis]",
        "terseLabel": "Offering",
        "documentation": "A sequence number (1, 2, 3...) used to distinguish different security offerings on a single fee bearing submission."
       }
      }
     },
     "auth_ref": []
    },
    "ffd_OfferingLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering [Line Items]",
        "terseLabel": "Offering:"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_OfferingNote": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingNote",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering Note",
        "terseLabel": "Offering Note"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OfferingSctyTitl": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingSctyTitl",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable",
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering Security Title",
        "terseLabel": "Security Class Title",
        "documentation": "The title of the class of securities being registered (for each class being registered)."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OfferingSctyTp": {
     "xbrltype": "securityTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingSctyTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering Security Type",
        "terseLabel": "Security Type",
        "documentation": "Type of securities: \"Asset-backed Securities\", \"ADRs/ADSs\", \"Debt\", \"Debt Convertible into Equity\", \"Equity\", \"Face Amount Certificates\", \"Limited Partnership Interests\", \"Mortgage Backed Securities\", \"Non-Convertible Debt\", \"Unallocated (Universal) Shelf\", \"Exchange Traded Vehicle Securities\", \"Other\""
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OfferingTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingTable",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering [Table]",
        "terseLabel": "Offering:"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_OfferingTableNa": {
     "xbrltype": "naItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingTableNa",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering Table [N/A]",
        "terseLabel": "Offering Table N/A"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_OffsetAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetAxis",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset [Axis]",
        "terseLabel": "Offset",
        "documentation": "A sequence number (1, 2, 3...) used to distinguish different offsets as applied to a fee bearing submission."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OffsetClmInitlFilgDt": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetClmInitlFilgDt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Claim Initial Filing Date",
        "terseLabel": "Initial Filing Date",
        "documentation": "The initial filing date of the earlier registration statement with which the earlier (offsetting) fee was paid for a claimed offset. If the offset fee was paid with an amendment, do not provide the amendment date under this element; instead, provide the date of the initial filing (i.e. the \"parent\" filing) ."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetClmdAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetClmdAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Claimed Amount",
        "terseLabel": "Fee Offset Claimed",
        "documentation": "The amount of offsetting fees being claimed."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetClmdInd": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetClmdInd",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Claimed Indicator",
        "terseLabel": "Offset Claimed"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OffsetExpltnForClmdAmt": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetExpltnForClmdAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Explanation for Claimed Amount",
        "terseLabel": "Explanation for Claimed Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OffsetLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetLineItems",
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Offset:",
        "label": "Offset [Line Items]"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OffsetNote": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetNote",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Note",
        "terseLabel": "Offset Note"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OffsetPrrFeeAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrFeeAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Fee Amount",
        "terseLabel": "Fee Paid with Fee Offset Source",
        "documentation": "The fee previously paid from which an offset is being derived."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrFileNb": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrFileNb",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior File Number",
        "terseLabel": "File Number",
        "documentation": "The EDGAR File Number of the earlier registration statement with which the earlier (offsetting) fee was paid. If the offset filing for the offset has a Securities Act File Number and an Investment Company Act File Number, the Securities Act File Number should be used."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrFilerNm": {
     "xbrltype": "filerNameItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrFilerNm",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Filer Name",
        "terseLabel": "Registrant or Filer Name",
        "documentation": "The name of the registrant that filed the earlier registration statement with which the earlier (offsetting) fee was paid."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrFormTp": {
     "xbrltype": "formTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrFormTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Form Type",
        "terseLabel": "Form or Filing Type",
        "documentation": "The Form Type of the offset filing."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrNbOfUnsoldScties": {
     "xbrltype": "nonNegativeIntegerItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrNbOfUnsoldScties",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Unsold Number of Securities",
        "terseLabel": "Unsold Securities Associated with Fee Offset Claimed",
        "documentation": "The number of unsold securities registered on the prior registration statement that are associated with the claimed offset."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrSctyTitl": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrSctyTitl",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Security Title",
        "terseLabel": "Security Title Associated with Fee Offset Claimed",
        "documentation": "The title of the class of securities from which offset fees were derived."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrSctyTp": {
     "xbrltype": "securityTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrSctyTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Security Type",
        "terseLabel": "Security Type Associated with Fee Offset Claimed",
        "documentation": "Type of securities: \"Asset-backed Securities\", \"ADRs/ADSs\", \"Debt\", \"Debt Convertible into Equity\", \"Equity\", \"Face Amount Certificates\", \"Limited Partnership Interests\", \"Mortgage Backed Securities\", \"Non-Convertible Debt\", \"Unallocated (Universal) Shelf\", \"Exchange Traded Vehicle Securities\", \"Other\""
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrUnsoldOfferingAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrUnsoldOfferingAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Unsold Offering Amount",
        "terseLabel": "Unsold Aggregate Offering Amount Associated with Fee Offset Claimed",
        "documentation": "The aggregate offering amount of unsold securities registered on the prior registration statement that are associated with the claimed offset."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetSrcFilgDt": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetSrcFilgDt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Source Filing Date",
        "terseLabel": "Filing Date",
        "documentation": "The filing date of the earlier registration statement with which the earlier (offsetting) fee was paid in an offset."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetTable",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Offset Payment:",
        "label": "Offset [Table]"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OffsetTableNa": {
     "xbrltype": "naItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetTableNa",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Table [N/A]",
        "terseLabel": "Offset Table N/A"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_PrevslyPdFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "PrevslyPdFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable",
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Previously Paid [Flag]",
        "terseLabel": "Fee Previously Paid"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_RegnFileNb": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "RegnFileNb",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Registration File Number",
        "terseLabel": "Registration File Number"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_RptgFsclYrEndDt": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "RptgFsclYrEndDt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Reporting Fiscal Year End Date",
        "terseLabel": "Reporting FY End Date"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_Rule011Flg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule011Flg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 0-11 [Flag]",
        "terseLabel": "Rule 0-11"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_Rule011a2OffsetFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule011a2OffsetFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Rule 0-11(a)(2) Offset",
        "label": "Rule 0-11(a)(2) Offset [Flag]"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_Rule415a6Flg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule415a6Flg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 415(a)(6) [Flag]",
        "terseLabel": "Rule 415(a)(6)",
        "documentation": "Checkbox indicating whether filer is claiming a 415(a)(6) carryforward."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "ffd_Rule429AggtOfferingAmt": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429AggtOfferingAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Aggregate Offering Amount",
        "terseLabel": "Maximum Aggregate Offering Price of Securities Previously Registered",
        "documentation": "The maximum aggregate offering amount of unsold securities registered on the prior registration statement that are carried forward under Rule 429. Only applicable if 457(o) was used in the fee calculation for the prior registration statement."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "ffd_Rule429CmbndPrspctsFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429CmbndPrspctsFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Combined Prospectus [Flag]",
        "terseLabel": "Rule 429",
        "documentation": "Checkbox indicating whether filer is using a combined prospectus under Rule 429."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "ffd_Rule429EarlierFileNb": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429EarlierFileNb",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Earlier File Number",
        "terseLabel": "File Number",
        "documentation": "The Securities Act File Number of the earlier effective registration statement(s) from which securities may be offered and sold using the combined prospectus pursuant to Rule 429."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "ffd_Rule429EarlierFormTp": {
     "xbrltype": "formTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429EarlierFormTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Earlier Form Type",
        "terseLabel": "Form Type",
        "documentation": "The Form Type of the earlier registration statement from which unsold securities are carried forward under Rule 429. This should be an EDGAR submission type (S-3, S-3/A, S-3ASR, etc.), which means there is a fixed set of possible responses. Note that while the XBRL response should be an EDGAR submission type, the human-readable Ex. 107 could include a simpler label (e.g., \"Form S-3\" in the human-readable and \"S-3ASR\" in the XBRL)."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "ffd_Rule429InitlFctvDt": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429InitlFctvDt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Initial Effective Date",
        "terseLabel": "Initial Effective Date",
        "documentation": "The filing date of the earlier registration statement from which unsold securities are carried forward under Rule 429."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "ffd_Rule429NbOfUnsoldScties": {
     "xbrltype": "nonNegativeDecimal2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429NbOfUnsoldScties",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Number Of Unsold Securities",
        "terseLabel": "Amount of Securities Previously Registered",
        "documentation": "The number of securities registered on the prior registration statement that are carried forward under Rule 429."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "ffd_Rule429PrspctsNote": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429PrspctsNote",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Prospectus Note",
        "terseLabel": "Combined Prospectus Note"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_Rule429SctyTitl": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429SctyTitl",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Security Title",
        "terseLabel": "Security Class Title"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_Rule429SctyTp": {
     "xbrltype": "securityTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429SctyTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Security Type",
        "terseLabel": "Security Type"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_Rule457aFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457aFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(a) [Flag]",
        "terseLabel": "Rule 457(a)",
        "documentation": "Checkbox indicating whether filer is using Rule 457(a) to calculate the registration fee due."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "ffd_Rule457bOffsetFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457bOffsetFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(b) Offset [Flag]",
        "terseLabel": "Rule 457(b) Offset",
        "documentation": "Checkbox indicating whether filer is claiming an offset under Rule 457(b) or 0-11(a)(2)."
       }
      }
     },
     "auth_ref": [
      "r5"
     ]
    },
    "ffd_Rule457fFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457fFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(f) [Flag]",
        "terseLabel": "Rule 457(f)",
        "documentation": "Checkbox indicating whether filer is using Rule 457(f) to calculate the registration fee due."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "ffd_Rule457oFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457oFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(o) [Flag]",
        "terseLabel": "Rule 457(o)",
        "documentation": "Checkbox indicating whether filer is using Rule 457(o) to calculate the registration fee due."
       }
      }
     },
     "auth_ref": [
      "r7"
     ]
    },
    "ffd_Rule457pOffsetFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457pOffsetFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(p) Offset [Flag]",
        "terseLabel": "Rule 457(p) Offset",
        "documentation": "Checkbox indicating whether filer is claiming an offset under Rule 457(p)."
       }
      }
     },
     "auth_ref": [
      "r8"
     ]
    },
    "ffd_Rule457rFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457rFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(r) [Flag]",
        "terseLabel": "Rule 457(r)"
       }
      }
     },
     "auth_ref": [
      "r9"
     ]
    },
    "ffd_Rule457sFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457sFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(s) Flag",
        "terseLabel": "Rule 457(s)"
       }
      }
     },
     "auth_ref": [
      "r10"
     ]
    },
    "ffd_Rule457uFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457uFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(u) [Flag]",
        "terseLabel": "Rule 457(u)",
        "documentation": "Checkbox indicating whether filer is using Rule 457(u) to calculate the registration fee due."
       }
      }
     },
     "auth_ref": [
      "r11"
     ]
    },
    "ffd_Scties424iAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Scties424iAxis",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Securities, 424I [Axis]",
        "terseLabel": "Securities, 424I"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_Scties424iLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Scties424iLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Securities, 424I [Line Items]",
        "terseLabel": "Securities, 424I:"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_Scties424iTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Scties424iTable",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Securities, 424I [Table]",
        "terseLabel": "Securities, 424I Table"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_Securities424iTableNa": {
     "xbrltype": "naItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Securities424iNa",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Securities 424I [N/A]",
        "terseLabel": "Securities 424I N/A"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_SubmissionLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "SubmissionLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Submission [Line Items]",
        "terseLabel": "Items"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_SubmissnTp": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "SubmissnTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Submission Type",
        "terseLabel": "Submission Type"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_TermntnCmpltnWdrwl": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TermntnCmpltnWdrwl",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Termination / Completion / Withdrawal Statement",
        "terseLabel": "Termination / Withdrawal Statement"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_TtlFeeAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TtlFeeAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Fee Amount",
        "terseLabel": "Total Fee Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_TtlFeeAndIntrstAmt": {
     "xbrltype": "nonNegativeDecimal2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TtlFeeAndIntrstAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Fee and Interest Amount",
        "terseLabel": "Total Fee and Interest Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_TtlOfferingAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TtlOfferingAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Offering Amount",
        "terseLabel": "Total Offering"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_TtlOffsetAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TtlOffsetAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Offset Amount",
        "terseLabel": "Total Offset Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_TtlPrevslyPdAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TtlPrevslyPdAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Previously Paid Amount",
        "terseLabel": "Previously Paid Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_TtlTxValtn": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TtlTxValtn",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Transaction Valuation",
        "terseLabel": "Total Transaction Valuation"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_TxValtn": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TxValtn",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Transaction Valuation",
        "terseLabel": "Transaction Valuation"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_ValSctiesRcvd": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "ValSctiesRcvd",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Value of Securities Received",
        "terseLabel": "Value of Securities Received",
        "documentation": "Value of securities to be received by the registrant (or cancelled upon issuance of securities to be registered on the form)"
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "ffd_ValSctiesRcvdPerShr": {
     "xbrltype": "nonNegativeDecimal4lItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "ValSctiesRcvdPerShr",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Value of Securities Received, Per Share",
        "terseLabel": "Value of Securities Received, Per Share",
        "documentation": "Value per share of securities to be received by the registrant (or cancelled upon issuance of securities to be registered on the form). This is included in the explanation of 457(f) fee calculation."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r1": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230"
  },
  "r2": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "415",
   "Subsection": "a"
  },
  "r3": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "429"
  },
  "r4": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457"
  },
  "r5": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "b"
  },
  "r6": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "f"
  },
  "r7": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "o"
  },
  "r8": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "p"
  },
  "r9": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "r"
  },
  "r10": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "s"
  },
  "r11": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "u"
  },
  "r12": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Subsection": "f",
   "Section": "457"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>19
<FILENAME>0001193125-25-179082-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001193125-25-179082-xbrl.zip
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
MG0P= +IR'B!R[MA1N8\E Z6$RTW*,67)(?@N5_"9*]>7($P8_!J::JV<]UZ
MLUO&67.EF%[)O9QMW(%?&Z[M3X+3VKW>:MYPBN]VUL]G$@7S8B$ZR4)=)16]
MX*HP.V7K\;4\!AG:@STO\*J0+WW>.J!_+E,O@SR _,M CV7>-&?^W[Y_"_NN
ME7NVF0M=V?C_H_3_"U!+ 0(4 Q0    ( (B)#%O=INFQ& L  .$R   7
M          "  0    !D,C0Q,#5D97AF:6QI;F=F965S+FAT;5!+!08
. 0 ! $4   !-"P     !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<FILENAME>d24105dexfilingfees_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2025"
  xmlns:ffd="http://xbrl.sec.gov/ffd/2025"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  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="https://xbrl.sec.gov/ffd/2025/ffd-2025.xsd"
      xlink:type="simple"/>
    <context id="rc">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001701108</identifier>
        </entity>
        <period>
            <startDate>2025-08-12</startDate>
            <endDate>2025-08-12</endDate>
        </period>
    </context>
    <context id="offrl_1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001701108</identifier>
            <segment>
                <xbrldi:typedMember dimension="ffd:OfferingAxis">
                    <dei:lineNo>1</dei:lineNo>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-08-12</startDate>
            <endDate>2025-08-12</endDate>
        </period>
    </context>
    <unit id="USD">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="pure">
        <measure>pure</measure>
    </unit>
    <unit id="Shares">
        <measure>shares</measure>
    </unit>
    <ffd:FormTp contextRef="rc" id="ixv-168">S-8</ffd:FormTp>
    <ffd:SubmissnTp contextRef="rc" id="ixv-169">S-8</ffd:SubmissnTp>
    <ffd:FeeExhibitTp contextRef="rc" id="ixv-170">EX-FILING FEES</ffd:FeeExhibitTp>
    <dei:EntityCentralIndexKey contextRef="rc" id="ixv-171">0001701108</dei:EntityCentralIndexKey>
    <dei:EntityRegistrantName contextRef="rc" id="ixv-172">Spero Therapeutics, Inc.</dei:EntityRegistrantName>
    <ffd:OfferingTableNa contextRef="rc" id="hiddenrcOfferingTableNa" xsi:nil="true"/>
    <ffd:OffsetTableNa contextRef="rc" id="hiddenrcOffsetTableNa">N/A</ffd:OffsetTableNa>
    <ffd:PrevslyPdFlg contextRef="offrl_1" id="ixv-175">false</ffd:PrevslyPdFlg>
    <ffd:FormTp contextRef="rc" id="ixv-200">S-8</ffd:FormTp>
    <dei:EntityRegistrantName contextRef="rc" id="ixv-201">Spero Therapeutics, Inc.</dei:EntityRegistrantName>
    <ffd:OfferingSctyTp contextRef="offrl_1" id="ixv-202">Equity</ffd:OfferingSctyTp>
    <ffd:OfferingSctyTitl contextRef="offrl_1" id="ixv-203">Common Stock, par value $0.001 per share</ffd:OfferingSctyTitl>
    <ffd:FeesOthrRuleFlg contextRef="offrl_1" id="ixv-204">true</ffd:FeesOthrRuleFlg>
    <ffd:AmtSctiesRegd
      contextRef="offrl_1"
      decimals="0"
      id="ixv-205"
      unitRef="Shares">3000000</ffd:AmtSctiesRegd>
    <ffd:MaxOfferingPricPerScty
      contextRef="offrl_1"
      decimals="INF"
      id="ixv-206"
      unitRef="USD">2.19</ffd:MaxOfferingPricPerScty>
    <ffd:MaxAggtOfferingPric
      contextRef="offrl_1"
      decimals="INF"
      id="ixv-207"
      unitRef="USD">6570000.00</ffd:MaxAggtOfferingPric>
    <ffd:FeeRate
      contextRef="offrl_1"
      decimals="INF"
      id="ixv-208"
      unitRef="pure">0.0001531</ffd:FeeRate>
    <ffd:FeeAmt
      contextRef="offrl_1"
      decimals="INF"
      id="ixv-209"
      unitRef="USD">1005.87</ffd:FeeAmt>
    <ffd:TtlOfferingAmt contextRef="rc" decimals="INF" id="ixv-210" unitRef="USD">6570000.00</ffd:TtlOfferingAmt>
    <ffd:TtlFeeAmt contextRef="rc" decimals="INF" id="ixv-211" unitRef="USD">1005.87</ffd:TtlFeeAmt>
    <ffd:TtlOffsetAmt contextRef="rc" decimals="INF" id="ixv-212" unitRef="USD">0.00</ffd:TtlOffsetAmt>
    <ffd:NetFeeAmt contextRef="rc" decimals="INF" id="ixv-213" unitRef="USD">1005.87</ffd:NetFeeAmt>
    <ffd:OfferingNote contextRef="offrl_1" id="ixv-214">(1) The number of shares of common stock, par value $0.001 per share ("Common Stock"), of Spero Therapeutics, Inc. (the "Registrant") stated above consists of additional shares of common stock available for issuance under the Spero Therapeutics, Inc. 2017 Stock Incentive Plan, as amended (the "2017 Plan"). The maximum number of shares which may be sold upon the exercise of such options or issuance of stock-based awards granted under the 2017 Plan are subject to adjustment in accordance with certain anti-dilution and other provisions of the 2017 Plan. Accordingly, pursuant to Rule 416 under the Securities Act of 1933, as amended (the "Securities Act"), this registration statement covers, in addition to the number of shares stated above, an indeterminate number of shares which may be subject to grant or otherwise issuable after the operation of any such anti-dilution and other provisions. (2) Estimated solely for the purpose of calculating the amount of the registration fee pursuant to Rule 457(c) and Rule 457(h) promulgated under the Securities Act. The offering price per share and the aggregate offering price for shares reserved for future grant or issuance under the 2017 Plan are based on the average of the high and the low price of the Registrant's Common Stock as reported on The Nasdaq Global Select Market as of a date (August 11, 2025) within five business days prior to filing this registration statement.</ffd:OfferingNote>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
