<SEC-DOCUMENT>0001193125-26-338121.txt : 20260806
<SEC-HEADER>0001193125-26-338121.hdr.sgml : 20260806
<ACCEPTANCE-DATETIME>20260806162301
ACCESSION NUMBER:		0001193125-26-338121
CONFORMED SUBMISSION TYPE:	S-8
PUBLIC DOCUMENT COUNT:		15
FILED AS OF DATE:		20260806
DATE AS OF CHANGE:		20260806
EFFECTIVENESS DATE:		20260806

FILER:

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

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

	BUSINESS ADDRESS:	
		STREET 1:		151 OYSTER POINT BLVD.
		STREET 2:		SUITE 400
		CITY:			SOUTH SAN FRANCISCO
		STATE:			CA
		ZIP:			94080
		BUSINESS PHONE:		650.515.3185

	MAIL ADDRESS:	
		STREET 1:		151 OYSTER POINT BLVD.
		STREET 2:		SUITE 400
		CITY:			SOUTH SAN FRANCISCO
		STATE:			CA
		ZIP:			94080
</SEC-HEADER>
<DOCUMENT>
<TYPE>S-8
<SEQUENCE>1
<FILENAME>d73385ds8.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;6, 2026 </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>CytomX 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">27-3521219</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>
</TABLE> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>151 Oyster Point Blvd., Suite 400 </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>South San Francisco, CA 94080 </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:8pt; font-family:Times New Roman" ALIGN="center"><B>(Address of Principal Executive Offices) (Zip Code) </B></P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>CytomX Therapeutics, Inc. Amended and Restated 2015 Equity Incentive Plan </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>CytomX Therapeutics, Inc. Amended and Restated Employee Stock Purchase Plan </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 Plans) </B></P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>Sean A. McCarthy, D.Phil. </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>President and Chief Executive Officer </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>CytomX Therapeutics, Inc. </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>151 Oyster Point Blvd., Suite 400 </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>South San Francisco, CA 94080 </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>(650) <FONT STYLE="white-space:nowrap">515-3185</FONT></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 for service) </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" ALIGN="center"><B><I>Copies to: </I></B></P> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>Mark
V. Roeder, Esq. </B></P> <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>John C. Williams, Esq. </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>Latham&nbsp;&amp; Watkins LLP </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>801 Jefferson Avenue, Suite 300 </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>Redwood City, California 94063 </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>(650) <FONT STYLE="white-space:nowrap">328-4600</FONT></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 &#8220;large accelerated filer,&#8221; &#8220;accelerated filer,&#8221; &#8220;smaller reporting company,&#8221; and &#8220;emerging growth company&#8221; 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">&#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">Non-accelerated filer</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&#9744;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">Smaller&nbsp;reporting&nbsp;company</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"></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="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>Proposed sale to take place as soon after the effective date of the </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>registration statement as awards under the plans are exercised and/or vest.</B></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; text-indent:4%; font-size:10pt; font-family:Times New Roman">This Registration Statement on Form <FONT STYLE="white-space:nowrap">S-8</FONT> is being filed for the purpose of registering an additional
7,500,000 shares of the Registrant&#8217;s common stock issuable under the following employee benefit plans for which Registration Statements of the Registrant on Form <FONT STYLE="white-space:nowrap">S-8</FONT> (File Nos. <FONT
STYLE="white-space:nowrap">333-207694,</FONT> <FONT STYLE="white-space:nowrap">333-209992,</FONT> <FONT STYLE="white-space:nowrap">333-215795,</FONT> <FONT STYLE="white-space:nowrap">333-223491,</FONT>
<FONT STYLE="white-space:nowrap">333-229916,</FONT> <FONT STYLE="white-space:nowrap">333-236711,</FONT> <FONT STYLE="white-space:nowrap">333-253452,</FONT> <FONT STYLE="white-space:nowrap">333-263321,</FONT>
<FONT STYLE="white-space:nowrap">333-270869,</FONT> <FONT STYLE="white-space:nowrap">333-277819,</FONT> <FONT STYLE="white-space:nowrap">333-285594,</FONT> and <FONT STYLE="white-space:nowrap">333-289370)</FONT> are effective: the CytomX
Therapeutics, Inc. Amended and Restated 2015 Equity Incentive Plan, as a result of the amendment of such plan, which added 6,500,000 shares of common stock, and the CytomX Therapeutics, Inc. Amended and Restated Employee Stock Purchase Plan, as a
result of the amendment of such plan, which added 1,000,000 shares of common stock. </P> <P STYLE="margin-top:24pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>INCORPORATION BY REFERENCE OF CONTENTS OF </B></P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B>REGISTRATION STATEMENT ON FORM <FONT STYLE="white-space:nowrap">S-8</FONT> </B></P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Pursuant to Instruction E of Form <FONT STYLE="white-space:nowrap">S-8,</FONT> the contents of the Registration Statements on Form <FONT
STYLE="white-space:nowrap">S-8</FONT> filed with the Securities and Exchange Commission on <A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000119312515360038/d205218ds8.htm"><U>October</U><U></U><U>&nbsp;30, 2015</U></A> (File <FONT
STYLE="white-space:nowrap">No.&nbsp;333-207694),</FONT> <A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000119312516495280/d155038ds8.htm"><U>March</U><U></U><U>&nbsp;7, 2016</U></A> (File
<FONT STYLE="white-space:nowrap">No.&nbsp;333-209992),</FONT> <A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000119312517022008/d294863ds8.htm"><U>January</U><U></U><U>&nbsp;27, 2017</U></A> (File
<FONT STYLE="white-space:nowrap">No.&nbsp;333-215795),</FONT> <A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000119312518073612/d545328ds8.htm"><U>March</U><U></U><U>&nbsp;7, 2018</U></A> (File
<FONT STYLE="white-space:nowrap">No.&nbsp;333-223491),</FONT> <A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000119312519054171/d701915ds8.htm"><U>February</U><U></U><U>&nbsp;27, 2019</U></A> (File
<FONT STYLE="white-space:nowrap">No.&nbsp;333-229916),</FONT> <A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000119312520052872/d893269ds8.htm"><U>February</U><U></U><U>&nbsp;27, 2020</U></A> (File
<FONT STYLE="white-space:nowrap">No.&nbsp;333-236711),</FONT> <A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000119312521054696/d134950ds8.htm"><U>February</U><U></U><U>&nbsp;24, 2021</U></A> (File
<FONT STYLE="white-space:nowrap">No.&nbsp;333-253452),</FONT> <A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000119312522066309/d239385ds8.htm"><U>March</U><U></U><U>&nbsp;4, 2022</U></A> (File
<FONT STYLE="white-space:nowrap">No.&nbsp;333-263321),</FONT> <A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000119312523080477/d492639ds8.htm"><U>March</U><U></U><U>&nbsp;27, 2023</U></A> (File
<FONT STYLE="white-space:nowrap">No.&nbsp;333-270869),</FONT> <A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000119312524064845/d760313ds8.htm"><U>March</U><U></U><U>&nbsp;11, 2024</U></A> (File
<FONT STYLE="white-space:nowrap">No.&nbsp;333-277819),</FONT> <A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000119312525048412/d897389ds8.htm"><U>March</U><U></U><U>&nbsp;6, 2025</U></A> (File
<FONT STYLE="white-space:nowrap">No.&nbsp;333-285594),</FONT> and <A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000119312525175473/d119770ds8.htm">August<U></U>&nbsp;7, 2025</A> (File
<FONT STYLE="white-space:nowrap">No.&nbsp;333-289370)</FONT> are incorporated by reference herein; except for Item 8 which is being updated by this Registration Statement. </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="3%"></TD>
<TD WIDTH="68%"></TD>

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

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

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

<TD VALIGN="bottom" WIDTH="3%"></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">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom" COLSPAN="10" ALIGN="center" STYLE="border-bottom:1.00pt solid #000000"><B>Incorporated by Reference</B></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD COLSPAN="2" VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:8pt">
<TD VALIGN="bottom" NOWRAP> <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:8pt; font-family:Times New Roman"><B>Exhibit</B></P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; border-bottom:1.00pt solid #000000; display:table-cell; font-size:8pt; font-family:Times New Roman; "><B>Number</B></P></TD>
<TD VALIGN="bottom">&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>Form</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>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>Number</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>Filed</B><br><B>Herewith</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;</TD>
<TD VALIGN="top"><A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000119312524141699/d816353dex31.htm">Amended and Restated Certificate of Incorporation.</A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right"><FONT STYLE="white-space:nowrap">8-K</FONT></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">5/17/2024</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">3.1</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&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>&#8199;4.1(a)</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"><A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000119312526277631/d154321dex31.htm">Certificate of Amendment to Amended and Restated Certificate of Incorporation. </A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right"><FONT STYLE="white-space:nowrap">8-K</FONT></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">6/22/2026</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">3.1</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&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>&#8199;4.2</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"><A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000119312524075211/d803852dex31.htm">Amended and Restated Bylaws.</A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right"><FONT STYLE="white-space:nowrap">8-K</FONT></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">3/22/2024</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">3.1</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&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>&#8199;4.3</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"><A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000119312515329662/d948537dex41.htm">Form of Common Stock Certificate.</A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right"><FONT STYLE="white-space:nowrap">S-1/A</FONT></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">9/28/2015</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">4.1</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&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>&#8199;4.4</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"><A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000156459017022252/ctmx-ex44_91.htm">Registration Rights Agreement dated as of September&nbsp;29, 2017 by and between CytomX Therapeutics, Inc. and Amgen, Inc.</A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right"><FONT STYLE="white-space:nowrap">10-Q</FONT></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">11/7/2017</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">4.4</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&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>&#8199;5.1</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"><A HREF="d73385dex51.htm">Opinion of Latham&nbsp;&amp; Watkins LLP. </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"></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>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">X</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>23.1</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"><A HREF="d73385dex231.htm">Consent of Independent Registered Public Accounting Firm. </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"></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>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">X</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>23.2</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"><A HREF="d73385dex51.htm">Consent of Latham&nbsp;&amp; Watkins LLP (included in Exhibit 5.1). </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"></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>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">X</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>24.1</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"><A HREF="#sig">Power of Attorney. Reference is made to the signature page to the Registration Statement. </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"></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>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">X</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.1(a)#</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"><A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000119312526277631/d154321dex101.htm">CytomX Therapeutics, Inc. Amended and Restated 2015 Equity Incentive Plan.</A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right"><FONT STYLE="white-space:nowrap">8-K</FONT></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">6/22/2026</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">10.1</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&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(b)#</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"><A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000156459015010977/ctmx-ex104_591.htm">Form of Option Award Notice under the CytomX Therapeutics, Inc. Amended and Restated 2015 Equity Incentive Plan.</A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right"><FONT STYLE="white-space:nowrap">10-Q</FONT></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">11/23/2015</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">10.4</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&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(c)#</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"><A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000156459015010977/ctmx-ex105_592.htm">Form of Early Exercise Option Award Notice under the CytomX Therapeutics, Inc. Amended and Restated 2015 Equity Incentive Plan.</A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right"><FONT STYLE="white-space:nowrap">10-Q</FONT></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">11/23/2015</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">10.5</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&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(d)#</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"><A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000095017022002519/ctmx-ex10_3.htm">Form of Restricted Share Unit Award Grant Notice and Agreement under the CytomX Therapeutics, Inc. Amended and Restated 2015 Equity Incentive Plan.</A></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right"><FONT STYLE="white-space:nowrap">10-K</FONT></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">3/1/2022</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">10.3</TD>
<TD NOWRAP VALIGN="bottom">(d)&nbsp;</TD>
<TD VALIGN="bottom">&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.2#</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"><A HREF="http://www.sec.gov/Archives/edgar/data/1501989/000119312526277631/d154321dex102.htm">CytomX Therapeutics, Inc. Amended and Restated Employee Stock Purchase Plan</A>.</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right"><FONT STYLE="white-space:nowrap">8-K</FONT></TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">6/22/2026</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">10.2</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&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>107</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top"><A HREF="d73385dexfilingfees.htm">Filing Fee Table. </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"></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>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" ALIGN="right">X</TD>
<TD NOWRAP VALIGN="bottom">&nbsp;</TD></TR>
</TABLE> <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="51%"></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" COLSPAN="3"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; margin-left:2.00em; text-indent:-2.00em; font-size:10pt; font-family:Times New Roman">#&#8195;&#8194;Indicates management contract or compensatory plan.</P></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>SIGNATURES </B></P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Pursuant to the requirements of the Securities Act of 1933, as amended, 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 South San Francisco,
State of California, on August&nbsp;6, 2026. </P> <P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P><DIV ALIGN="right">
<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>CytomX 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">&nbsp;</TD>
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:1pt; border-bottom:1px solid #000000; font-size:10pt; font-family:Times New Roman">/s/ Sean A. McCarthy</P></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top">Sean A. McCarthy, D.Phil.</TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top">President and Chief Executive Officer</TD></TR>
</TABLE></DIV> <P STYLE="margin-top:24pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman" ALIGN="center"><B><A NAME="sig"></A>POWER OF ATTORNEY </B></P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">KNOW ALL PERSONS BY THESE PRESENTS, that each person whose signature appears below does hereby constitute and appoint Sean A. McCarthy,
D.Phil., and Christopher W. Ogden, and each of them, with full power of substitution and full power to act without the other, his or her true and lawful <FONT STYLE="white-space:nowrap"><FONT STYLE="white-space:nowrap">attorney-in-fact</FONT></FONT>
and agent to act for him or her in his or her name, place and stead, in any and all capacities, to sign any and all amendments (including post-effective amendments) to this registration statement, and to file this registration statement, with all
exhibits thereto, and other documents in connection therewith, with the Securities and Exchange Commission, granting unto said <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 and necessary to be done in order to effectuate the same as fully, to all intents and purposes, as they or he or she might or could do in person, hereby
ratifying and confirming all that said <FONT STYLE="white-space:nowrap"><FONT STYLE="white-space:nowrap">attorneys-in-fact</FONT></FONT> and agents, or any of them, may lawfully do or cause to be done by virtue hereof. </P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">Pursuant to the requirements of the Securities Act of 1933, as amended, this registration statement has been signed by the following persons
in the capacities and on the date indicated. </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">

<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" NOWRAP 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>Signature</B></P></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>Title</B></P></TD>
<TD VALIGN="bottom">&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>Date</B></P></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/ Sean A. McCarthy</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">Sean A. McCarthy, D.Phil.</P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">President, Chief Executive Officer and Chairman</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><I>(Principal Executive Officer)</I></P></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" NOWRAP ALIGN="center">August&nbsp;6, 2026</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/ Christopher W. Ogden</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">Christopher W. Ogden</P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"> <P STYLE="margin-top:0pt; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Chief Financial Officer</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman"><I>(Principal Financial Officer and Principal Accounting Officer)</I></P></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" NOWRAP ALIGN="center">August&nbsp;6, 2026</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/ Matthew P. Young</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">Matthew P. Young</P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Director</P></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" NOWRAP ALIGN="center">August&nbsp;6, 2026</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/ Alan Ashworth</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">Alan Ashworth, Ph.D. FRS</P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Director</P></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" NOWRAP ALIGN="center">August&nbsp;6, 2026</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/ James R. Meyers</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">James R. Meyers</P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Director</P></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" NOWRAP ALIGN="center">August&nbsp;6, 2026</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/ Elaine V. Jones</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">Elaine V. Jones, Ph.D.</P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Director</P></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" NOWRAP ALIGN="center">August&nbsp;6, 2026</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/ Halley E. Gilbert</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">Halley E. Gilbert</P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Director</P></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" NOWRAP ALIGN="center">August&nbsp;6, 2026</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/ Mani Mohindru</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">Mani Mohindru, Ph.D.</P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Director</P></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" NOWRAP ALIGN="center">August&nbsp;6, 2026</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/ Zhen Su</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">Zhen Su, M.D.</P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Director</P></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" NOWRAP ALIGN="center">August&nbsp;6, 2026</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/ Charles Fuchs</P>
<P STYLE="margin-top:0pt; margin-bottom:1pt; font-size:10pt; font-family:Times New Roman" ALIGN="center">Charles Fuchs, M.D., M.P.H.</P></TD>
<TD VALIGN="bottom">&nbsp;&nbsp;</TD>
<TD VALIGN="top"> <P STYLE=" margin-top:0pt ; margin-bottom:0pt; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">Director</P></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="top" NOWRAP ALIGN="center">August&nbsp;6, 2026</TD></TR>
</TABLE>
</DIV></Center>

</BODY></HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-5.1
<SEQUENCE>2
<FILENAME>d73385dex51.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>
<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="30%"></TD>

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

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

<TD VALIGN="bottom" WIDTH="1%"></TD>
<TD WIDTH="27%"></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;</TD>
<TD VALIGN="bottom" COLSPAN="3">801 Jefferson Avenue, Suite 300</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;</TD>
<TD VALIGN="bottom" COLSPAN="3">Redwood City, California 94063</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;</TD>
<TD VALIGN="bottom" COLSPAN="3">Tel: +1.650.328.4600 Fax: +1.650.463.2600</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="1"></TD>
<TD HEIGHT="1" COLSPAN="2"></TD>
<TD HEIGHT="1" COLSPAN="4"></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;</TD>
<TD VALIGN="bottom" COLSPAN="3">www.lw.com</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="8"></TD>
<TD HEIGHT="8" COLSPAN="2"></TD>
<TD HEIGHT="8" COLSPAN="4"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="bottom" ROWSPAN="2">


<IMG SRC="g73385g33w61.jpg" ALT="LOGO">
</TD>
<TD VALIGN="bottom" ROWSPAN="2">&nbsp;</TD>
<TD ROWSPAN="2" VALIGN="bottom"></TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom" COLSPAN="3">FIRM / AFFILIATE OFFICES</TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">Austin</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">Milan</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" 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;</TD>
<TD VALIGN="bottom">Beijing</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">Munich</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" 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;</TD>
<TD VALIGN="bottom">Boston</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">New York</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" 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;</TD>
<TD VALIGN="bottom">Brussels</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">Orange County</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" 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;</TD>
<TD VALIGN="bottom">Chicago</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">Paris</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" 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;</TD>
<TD VALIGN="bottom">Dubai</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">Riyadh</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" 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;</TD>
<TD VALIGN="bottom">D&uuml;sseldorf</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">San Diego</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" 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;</TD>
<TD VALIGN="bottom">Frankfurt</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">San Francisco</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" 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;</TD>
<TD VALIGN="bottom">Hamburg</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">Seoul</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" 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;</TD>
<TD VALIGN="bottom">Hong Kong</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">Silicon Valley</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" 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;</TD>
<TD VALIGN="bottom">Houston</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">Singapore</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" 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;</TD>
<TD VALIGN="bottom">London</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">Tel Aviv</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" 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;</TD>
<TD VALIGN="bottom">Los Angeles</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">Tokyo</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" COLSPAN="2"></TD>
<TD HEIGHT="2" 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;</TD>
<TD VALIGN="bottom">Madrid</TD>
<TD VALIGN="bottom">&nbsp;</TD>
<TD VALIGN="bottom">Washington, D.C.</TD></TR>
</TABLE> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">August&nbsp;6, 2026 </P> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">CytomX
Therapeutics, Inc. </P> <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">151 Oyster Point Blvd., Suite 400 </P> <P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">South
San Francisco, CA 94080 </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">Registration Statement on Form <FONT STYLE="white-space:nowrap">S-8;</FONT> 7,500,000 shares of Common Stock of
CytomX Therapeutics, Inc., par value $0.00001 per share </P></TD></TR></TABLE> <P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">To the addressee set forth above: </P>
<P STYLE="margin-top:6pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">We have acted as special counsel to CytomX Therapeutics, Inc., a Delaware corporation (the &#8220;<B><I>Company</I></B>&#8221;), in connection
with the registration by the Company of an aggregate of 7,500,000 shares (the &#8220;<B><I>Shares</I></B>&#8221;) of common stock of the Company, par value $0.00001 per share, issuable under the CytomX Therapeutics, Inc. Amended and Restated 2015
Equity Incentive Plan (the&nbsp;&#8220;<B><I>2015 Plan</I></B>&#8221;) and the CytomX Therapeutics, Inc. Amended and Restated Employee Stock Purchase Plan (the &#8220;<B><I>ESPP</I></B>&#8221;). </P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">The Shares are included in a registration statement on Form <FONT STYLE="white-space:nowrap">S-8</FONT> under the Securities Act of 1933, as
amended (the &#8220;<B><I>Act</I></B>&#8221;), filed with the Securities and Exchange Commission (the &#8220;<B><I>Commission</I></B>&#8221;) on August&nbsp;6, 2026 (the &#8220;<B><I>Registration Statement</I></B>&#8221;). This opinion is being
furnished in connection with the requirements of Item 601(b)(5) of Regulation <FONT STYLE="white-space:nowrap">S-K</FONT> under the Act, and no opinion is expressed herein as to any matter pertaining to the contents of the Registration Statement or
the related prospectuses, other than as expressly stated herein with respect to the issue of the Shares. </P> <P STYLE="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">As such counsel, we have
examined such matters of fact and questions of law as we have considered appropriate for purposes of this letter. With your consent, we have relied upon certificates and other assurances of officers of the Company and others as to factual matters
without having independently verified such factual matters. We are opining herein as to the General Corporation Law of the State of Delaware (the &#8220;<B><I>DGCL</I></B>&#8221;), and we express no opinion with respect to any other laws. </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>August 6</B><B>, 2026</B> </P>
<P STYLE="margin-top:0pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman"><B>Page </B><B>2</B> </P> <P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P> <P STYLE="margin-top:0pt;margin-bottom:0pt">


<IMG SRC="g73385g0730065707175.jpg" ALT="LOGO">
 </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">Subject to the foregoing and the other matters set forth herein, it is our opinion that, as
of the date hereof, when the Shares shall have been duly registered on the books of the transfer agent and registrar therefor in the name or on behalf of the purchasers and have been issued by the Company against payment therefor in the
circumstances contemplated by the 2015 Plan and the ESPP, as applicable, assuming in each case that the individual issuances, grants or awards under the 2015 Plan, and sales under the ESPP, are duly authorized by all necessary corporate action and
duly issued, granted or awarded and exercised in accordance with the requirements of law and the 2015 Plan and the ESPP, as applicable (and the agreements and awards duly adopted thereunder and in accordance therewith), the issuance and sale of the
Shares will have been duly authorized by all necessary corporate action of the Company, and the Shares will be validly issued, fully paid and nonassessable. In rendering the foregoing opinion, we have assumed that the Company will comply with all
applicable notice requirements regarding uncertificated shares provided in the DGCL. </P> <P STYLE="margin-top:12pt; margin-bottom:0pt; text-indent:4%; font-size:10pt; font-family:Times New Roman">This opinion is for your benefit in connection with
the Registration Statement and may be relied upon by you and by persons entitled to rely upon it pursuant to the applicable provisions of the Act. We consent to your filing this opinion as an exhibit to the Registration Statement. In giving such
consent, we do not thereby admit that we are in the category of persons whose consent is required under Section&nbsp;7 of the Act or the rules and regulations of the Commission thereunder. </P>
<P STYLE="font-size:12pt;margin-top:0pt;margin-bottom:0pt">&nbsp;</P><DIV ALIGN="right">
<TABLE CELLSPACING="0" CELLPADDING="0" WIDTH="40%" BORDER="0" STYLE="BORDER-COLLAPSE:COLLAPSE; font-family:Times New Roman; font-size:10pt">


<TR>

<TD WIDTH="100%"></TD></TR>


<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">Sincerely,</TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="16"></TD></TR>
<TR STYLE="page-break-inside:avoid ; font-family:Times New Roman; font-size:10pt">
<TD VALIGN="top">/s/ Latham&nbsp;&amp; Watkins LLP</TD></TR>
</TABLE></DIV>
</DIV></Center>

</BODY></HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23.1
<SEQUENCE>3
<FILENAME>d73385dex231.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"><B>Consent of Independent Registered Public Accounting Firm </B></P>
<P STYLE="margin-top:12pt; margin-bottom:0pt; font-size:10pt; font-family:Times New Roman">We consent to the incorporation by reference in the Registration Statement <FONT STYLE="white-space:nowrap">(Form&nbsp;S-8)&nbsp;pertaining</FONT> to the
CytomX Therapeutics, Inc. Amended and Restated 2015 Equity Incentive Plan and the CytomX Therapeutics, Inc. Amended and Restated Employee Stock Purchase Plan of our reports dated March&nbsp;16, 2026, with respect to the financial statements of
CytomX Therapeutics, Inc. and the effectiveness of internal control over financial reporting of CytomX Therapeutics, Inc. included in its Annual Report <FONT STYLE="white-space:nowrap">(Form&nbsp;10-K)&nbsp;for</FONT> the year ended
December&nbsp;31, 2025, filed with the Securities and Exchange Commission. </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="100%"></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; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">/s/ Ernst&nbsp;&amp; Young LLP</P></TD></TR>
<TR STYLE="font-size:1pt">
<TD HEIGHT="16"></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; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">San Francisco, California</P></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; margin-left:1.00em; text-indent:-1.00em; font-size:10pt; font-family:Times New Roman">August&nbsp;6, 2026</P></TD></TR>
</TABLE>
</DIV></Center>

</BODY></HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-FILING FEES
<SEQUENCE>4
<FILENAME>d73385dexfilingfees.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/2026" xmlns:ffd="http://xbrl.sec.gov/ffd/2026">
<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-189">S-8</ix:nonNumeric> <ix:nonNumeric name="ffd:SubmissnTp" contextRef="rc" id="ixv-190">S-8</ix:nonNumeric> <ix:nonNumeric name="ffd:FeeExhibitTp" contextRef="rc" id="ixv-191">EX-FILING FEES</ix:nonNumeric> <ix:nonNumeric name="dei:EntityCentralIndexKey" contextRef="rc" id="ixv-192">0001501989</ix:nonNumeric> <ix:nonNumeric name="dei:EntityRegistrantName" contextRef="rc" id="ixv-193">CytomX 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-196">Fees to be Paid</ix:nonNumeric> <ix:nonNumeric name="ffd:PrevslyPdFlg" contextRef="offrl_2" format="ixt:booleanfalse" id="ixv-197">Fees to be Paid</ix:nonNumeric> </ix:hidden> <ix:references> <link:schemaRef xlink:href="https://xbrl.sec.gov/ffd/2026/ffd-2026.xsd" xlink:type="simple"/> </ix:references> <ix:resources> <xbrli:context id="rc"> <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0001501989</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:startDate>2026-08-04</xbrli:startDate> <xbrli:endDate>2026-08-04</xbrli:endDate> </xbrli:period> </xbrli:context> <xbrli:context id="offrl_1"> <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0001501989</xbrli:identifier> <xbrli:segment> <xbrldi:typedMember dimension="ffd:OfferingAxis"> <dei:lineNo>1</dei:lineNo> </xbrldi:typedMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2026-08-04</xbrli:startDate> <xbrli:endDate>2026-08-04</xbrli:endDate> </xbrli:period> </xbrli:context> <xbrli:context id="offrl_2"> <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0001501989</xbrli:identifier> <xbrli:segment> <xbrldi:typedMember dimension="ffd:OfferingAxis"> <dei:lineNo>2</dei:lineNo> </xbrldi:typedMember> </xbrli:segment> </xbrli:entity> <xbrli:period> <xbrli:startDate>2026-08-04</xbrli:startDate> <xbrli:endDate>2026-08-04</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-231">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-232">CytomX 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-233">Equity</ix:nonNumeric> </td>
<td style="text-align: left;"> <ix:nonNumeric name="ffd:OfferingSctyTitl" contextRef="offrl_1" id="ixv-234">Common Stock, par value $0.00001 per share</ix:nonNumeric> </td>
<td style="text-align: center;"> <ix:nonNumeric name="ffd:FeesOthrRuleFlg" contextRef="offrl_1" format="ixt:booleantrue" id="ixv-235">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-236">6,500,000</ix:nonFraction> </td>
<td style="text-align: right;"> <span>$</span> <ix:nonFraction name="ffd:MaxOfferingPricPerScty" unitRef="USD" decimals="2" format="ixt:numdotdecimal" contextRef="offrl_1" id="ixv-237">3.19</ix:nonFraction> </td>
<td style="text-align: right;"> <span>$</span> <ix:nonFraction name="ffd:MaxAggtOfferingPric" unitRef="USD" decimals="2" format="ixt:numdotdecimal" contextRef="offrl_1" id="ixv-238">20,735,000.00</ix:nonFraction> </td>
<td style="text-align: right;"> <ix:nonFraction name="ffd:FeeRate" unitRef="pure" decimals="7" format="ixt:numdotdecimal" contextRef="offrl_1" id="ixv-239">0.0001381</ix:nonFraction> </td>
<td style="text-align: right;"> <span>$</span> <ix:nonFraction name="ffd:FeeAmt" unitRef="USD" decimals="2" format="ixt:numdotdecimal" contextRef="offrl_1" id="ixv-240">2,863.50</ix:nonFraction> </td> </tr>
<tr style="background-color:#E7E7E2">
<td style="text-align: center;"> 2 </td>
<td style="text-align: left;"> <ix:nonNumeric name="ffd:OfferingSctyTp" contextRef="offrl_2" id="ixv-241">Equity</ix:nonNumeric> </td>
<td style="text-align: left;"> <ix:nonNumeric name="ffd:OfferingSctyTitl" contextRef="offrl_2" id="ixv-242">Common Stock, par value $0.00001 per share</ix:nonNumeric> </td>
<td style="text-align: center;"> <ix:nonNumeric name="ffd:FeesOthrRuleFlg" contextRef="offrl_2" format="ixt:booleantrue" id="ixv-243">Other</ix:nonNumeric> </td>
<td style="text-align: right;"> <ix:nonFraction name="ffd:AmtSctiesRegd" unitRef="Shares" decimals="0" format="ixt:numdotdecimal" contextRef="offrl_2" id="ixv-244">1,000,000</ix:nonFraction> </td>
<td style="text-align: right;"> <span>$</span> <ix:nonFraction name="ffd:MaxOfferingPricPerScty" unitRef="USD" decimals="2" format="ixt:numdotdecimal" contextRef="offrl_2" id="ixv-245">2.71</ix:nonFraction> </td>
<td style="text-align: right;"> <span>$</span> <ix:nonFraction name="ffd:MaxAggtOfferingPric" unitRef="USD" decimals="2" format="ixt:numdotdecimal" contextRef="offrl_2" id="ixv-246">2,710,000.00</ix:nonFraction> </td>
<td style="text-align: right;"> <ix:nonFraction name="ffd:FeeRate" unitRef="pure" decimals="7" format="ixt:numdotdecimal" contextRef="offrl_2" id="ixv-247">0.0001381</ix:nonFraction> </td>
<td style="text-align: right;"> <span>$</span> <ix:nonFraction name="ffd:FeeAmt" unitRef="USD" decimals="2" format="ixt:numdotdecimal" contextRef="offrl_2" id="ixv-248">374.25</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="2" format="ixt:numdotdecimal" unitRef="USD" id="ixv-249">23,445,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="2" format="ixt:numdotdecimal" unitRef="USD" id="ixv-250">3,237.75</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="2" format="ixt:numdotdecimal" unitRef="USD" id="ixv-251">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="2" format="ixt:numdotdecimal" unitRef="USD" id="ixv-252">3,237.75</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-253">Note 1(a). Pursuant to Rule 416(a) under the Securities Act of 1933, as amended (the "Securities Act"), this registration statement shall also cover any additional shares of the Registrant's common stock that become issuable under the CytomX Therapeutics, Inc. Amended and Restated 2015 Equity Incentive Plan (the "2015 Plan") or the CytomX Therapeutics, Inc. Amended and Restated Employee Stock Purchase Plan (the "ESPP") by reason of any stock dividend, stock split, recapitalization or similar transaction effected without the Registrant's receipt of consideration which would increase the number of outstanding shares of common stock. Note 1(b). Amount Registered represents the additional shares of common stock available for future issuance under the 2015 Plan and the ESPP resulting from amendments thereto on June 17, 2026, including an additional 6,500,000 shares of common stock under the 2015 Plan and an additional 1,000,000 shares of common stock under the ESPP. Note 1(c). The Proposed Maximum Offering Price Per Unit is estimated solely for purposes of calculating the amount of the registration fee pursuant to Rules 457(c) and 457(h) under the Securities Act. The Proposed Maximum Offering Price Per Share and the Maximum Aggregate Offering Price for the shares issuable under the 2015 Plan are based on $3.19 per share, the average of the high and low prices of the Registrant's common stock as reported on The Nasdaq Global Select Market on July 31, 2026. The Proposed Maximum Offering Price Per Share and the Maximum Aggregate Offering Price for the shares issuable under the ESPP are based on $2.71 per share, representing 85% of $3.19 per share, the average of the high and low prices of the Registrant's common stock as reported on The Nasdaq Global Select Market on July 31, 2026, because the purchase price of shares reserved for issuance under the ESPP is at least 85% of the lower of the fair market value of the Registrant's common stock on the enrollment date or the exercise date of the applicable offering period.</ix:nonNumeric> </td> </tr>
<tr>
<td colspan="7"> <hr style="width:100%;text-align:left;margin-left:0"/> </td> </tr>
<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">2</sup> </p> </td>
<td colspan="7" style="white-space: pre-line;"> <ix:nonNumeric name="ffd:OfferingNote" escape="1" contextRef="offrl_2" id="ixv-254">See Offering Note 1.</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> </td>
<td style="text-align: left;"> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td style="text-align: right;"> </td>
<td style="text-align: left;"> </td>
<td style="text-align: left;"> </td>
<td style="text-align: right;"> </td>
<td style="text-align: right;"> </td>
<td style="text-align: right;"> </td> </tr>
<tr style="background-color:#E7E7E2">
<td style="text-align: left;"> Fee Offset Sources </td>
<td> </td>
<td style="text-align: left;"> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td style="text-align: right;"> </td>
<td style="text-align: left;"> </td>
<td style="text-align: left;"> </td>
<td style="text-align: right;"> </td>
<td style="text-align: right;"> </td>
<td style="text-align: right;"> </td> </tr> </table> </div> </body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>5
<FILENAME>g73385g0730065707175.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 g73385g0730065707175.jpg
M_]C_X  02D9)1@ ! 0$ 8 !@  #_VP!#  ," @," @,# P,$ P,$!0@%!00$
M!0H'!P8(# H,# L*"PL-#A(0#0X1#@L+$!80$1,4%145# \7&!84&!(4%13_
MVP!# 0,$! 4$!0D%!0D4#0L-%!04%!04%!04%!04%!04%!04%!04%!04%!04
M%!04%!04%!04%!04%!04%!04%!04%!3_P  1"  , *(# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#[8_8-NY[_
M /8^^%=Q<S27$\FCHSRRN69CO;DD\FOGC]KSXV0Q?'#4-8T[Q0^GW/P@@LKR
MVT:.5T76+V>9);R!@H*OMLD"C/1KD],&OI_X:?LB_"_X/ZOI>H^$M(U;2YM,
M#K:0-XEU2XM8@RLI'V>6Y:(C#MU0X)R,$ UWOAKX;^'/"%CKMGI6F+!;ZY?7
M&IZDLDLDQN;B?'FNQ=F/(  4'"A0   !0!X'^VMHOA7XA?LLZ]X[M[>*_N8M
M$%[H^K12,KQQR['5T*D=05-4?VQO#-C\)_V2;ZV\%:6-."ZWH\T=G9SF+S9&
MO[8$;R3C<  2>*]V/P1\%GX3)\,VTAW\$I:"P73'O;AB( <A/-,GFX';Y\@
M <"M;QY\.?#WQ-\,GP_XET_^TM(,\%R;?SY(OWD,BRQ-NC96X=%.,X.,'(XH
M ^;]:\>?$#Q!^TY\%+7Q3X"D\#V1N-3*NNNPWRW+"QE^4I$!C'7)]*X/]MWX
MHQZC\3$TG3?%?]@WWP]TY?$L$$<C#[=J1<>1;$+P1Y:RDAO[RU]HZUX$T/Q#
MXFT#Q!J%C]HU?07EDTZX\Z1?(:2-HW.U6"ME&8?,#C.1@TSP_P##[P_X7O?$
M-WING""Z\077VS4Y7E>1KF7RUCR2[' "* %& .PY- 'AG[1OC^W^)O[(<>H:
M%>O9KXX@LK"TF@DQ)$UVZ)@$=U+$''<&OF'XF^._%?Q ^!EA\++'4;V+Q5X!
M-]>:](DA662'3G'V7>1SB7=#SWYK[TMO@/X&L_"^C^'(=$*:)H^HC5;&R^V7
M!2"Y$IE##]YDJ'8D(25'3&.*?:_ OP)9>)/%VOP>'H(M8\6PBWUJZ663=>1A
M=H!&["\=T )P/2@#EO$'Q8U:'X>>#-<TH0*-4L(;^:6Y<(&#1*_EH6!#.23\
MG!/13FN&_:#\>Q^#]9^$OQ?CDFLM"MKV6PU59RT>VUN(V +H>C!E'##(SC@U
M]$^%O#&F^"O#FG:#HUN;32M.@6VM8&E>4QQJ,*NYR6.!W))K-^)/PS\,_%[P
MA>>%_%^E)K6@WFWS[.21XP^#D?,C*PY]#0!^?&G^/O%GP_TGQO8ZIJ5T=3^+
MNGP:KHBO*Q:&>>X\AHXQGY0(2'P*]H_; U33=+\'> O@N_BUO"G]I6QEO=52
M=TEBM[:+"'<N3\\VWZ[3S7T3XA^!/@3Q5JW@W4]4\/0W5[X/</H<OG2I]C(3
M8.%8!P%[.&'?&:W;?P'H5MXVN_%T=B?^$ANK1+"6\::1OW"L65%0L47DDDJ
M3WS0!X)\+=?T']IK]DJTU#Q%:P:U>:997%M<[RPV7ENC(9!R#SM# GUJM^S;
MX.T?PY^QE;ZWIUDMKJ^J^%99[V]#L99Y!#)AF))Y]Z]ZT3X8>&?#DOB=]-TS
M[*?$MP]UJJK/*5N)778SA2Q"$CKL"YZ]>:GT'X>^'_#/@2#P;ING_9O#<%FU
MA'9>=(^V @J4WLQ<\$\[L^] 'R'^QCJUU\4]7\.Q^.+N>QOO"6AVK^'O#<LA
M*7<,D8W:HSYQ.S'* ?\ ++!!^8DU[/\ #R[GD_:\^+MN\TC01Z1HQ2(L2JDI
M+D@=!FN[M?@7X(L9/!\MMHIMIO",30:--#>3I);1%=IC+A\RH0!E9"PR <9&
M:WM-\!Z%I'C'6/%5I8^5KVKPP6]]=^=(WFQP@B,;"Q5<!CRH!.><T ?G%X"\
M;^)/@MX#\;ZKK&KW=[X"^(TGB/38KFYGRNC:S#)=10*&/W8YXXU Y.'3@#-?
M3_Q"\ >,OB3^S3\-HO"X35VLDL;_ %7P_/JDFGC7+5;<AK4W*9*$LR-\WRDK
MACBO5[_]GGX>:I\,-2^'=YX;BNO!VHSS7-SIDMQ,P>668S.XD+[U)D8L-K#'
M08'%7_$WP:\+^+/!NE>%KN+4[31M+\O[)'I6LWEA+&$0HH\Z"5)&&TD$,Q!Z
MGD T >?_  6^)GAF3X/PW?A+PU?^%K'2];ETK4]!NH7N)].N%N"MRG[MI-P#
MDD,I*X/8# Z?5/B!XDO88;7P_IYN-6_MB:UD2YL94A2V\JY>"1F8H-I,4(9E
M+$;N%)(%==X ^'OAWX7>%[7P[X6TN+2-'MBS1V\19B69BS.SL2SNS$DLQ)))
+))KHJ "BBB@#_]D!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>6
<FILENAME>g73385g33w61.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 g73385g33w61.jpg
M_]C_X  02D9)1@ ! 0$ 8 !@  #_VP!#  $! 0$! 0$! 0$! 0$! 0$! 0$!
M 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0'_
MVP!# 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$!
M 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0'_P  1"  B 1D# 1$  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#^_B@ H *
M"@ H * "@ H * "@ H * "@ H * "@ H * "@ H * "@ H * "@ H * "@ H
M * "@ H * "@ H * /YQ?B!XB\01_P#!U7\#O"T>NZRGAB?_ ((T:OK,WAQ-
M4O5T&;5Q^T]\8+4:K+I"SC3Y-2%M#%;B^>W-T((HX1+Y:*H /Z.J /PM_P"#
MC#]J#Q/^S;_P2Y^,.A?#+4+RU^.'[4FO>#?V2_@O9Z/K*:+XCU+Q3\:-6&E>
M(H?#]RMS:WBZG'\.;/QHUG/930R6E\]E<2W-K"KSH ?F_P#\&X7BSXF?L:?M
M1?\ !1#_ ((O_M*?$G6/'/Q2^!?BOP5^T9\)M;\2ZS?:K=>*/!/Q \!^"+;Q
M]!H<NL7-Y=0Z3H5MJ/PBUJSL;'4+FROKSQ;XIUB+2M&GAU5KX _</]O/_@D_
M^RO_ ,%%_$?P\\6?'[4/CAH^O?#31-<\.Z%=_"#XU>-/A?!?:1KE]9:E);Z]
MINA79TO4Y;"\M)9-/OOL4%^B:A>6]U=7=NEC%9 '\>__  ;Z_P#!)[]G/_@H
MS\,_VR/%/[2WQ$_:EU/5O@G^U?XB^$/@9_!_[1OQ \)P0>#=-\/Z7J-K!J4%
MI=W"ZCJ N;N8O?R%)'0JA0!10!^K7_!YEXL\5>#O^"8'P(U/PAXF\0>%=2G_
M &]/A?83ZAX;UG4=#OIK&7]GO]J.XELI;O3+FUN)+22XM;:>2W>0PO-;P2LA
M>&-E /Z,_P#ANS]B'_H\C]E7_P 2&^$?_P U] 'XA?\ !JMXMU7QK^P3^TCK
MFK:_KWBB23_@HG^TM#8ZWKGB*Y\2Q7NE+X<^$DNFMH-W<RSM:Z#';3)';6<-
MQ/;&\2_OX'6.^$<8!)_P= _'CXGZ/^R5^SU^PS^SWXAU?0_V@_\ @I!^U+\-
M/@!X3_X1[4=3T371X%TG7]&UKQA?:?K>E26]U8VS^-=0^$OA3Q% M]8Q:AX2
M\8:_;7T\FE'4;6X /+_^#6WXR_$?PMX"_;Q_X)H?'CQ%K.O?&;_@GM^U=XO\
M-QZAXDU*]U#4-6^'OCC7?$VE6TVF7>K:C=WNL:;;>/OA[XXUM=1L88M)CT7Q
MMX2F@DF35K:>X /U[_X+0_%N_P#@?_P2@_X*!_$32=1OM&UJU_9<^*?A70M9
MTNYU&QU71M?^).@3_#70=8TG4-)FM]0TW5=*U?Q=9:AIFIVT\+:;?6]O?/(L
M=NY !_,O_P &B?[2GQI\!?$;]IG_ ()Y_M&>*;[6M9\1?!_]G_\ ;R^"0\0^
M)=6UW5?^$0^-?PM^&WB37(K*_P!;GFDO+75?A_\ $GX$ZZNCZ>($T'5K;Q@[
M_P!J?:[BZL0#\O/^"PO[>'QR^(O_  6DU7]K7P9X_P#%VB_LJ_\ !.?]M_\
M9!_9$TV?3=6OM$\#/XV\'^(?'_Q6^($>JO<>1X)U;49/'?PE^,::Q<^((=1-
MWX2L?"UMJ;W/AS3K*&, _P!,#QCXITSP/X1\5>-=:$YT?P?X;USQ3JPM1;FY
M.F>'],NM6OQ;B[N+2U,YM;240BYN[6W,FWSKB&/=(H!^7G_!.K_@HKX[_;!U
MG5-"^*'@;X#>&GUOX&_!#]I;X<>(_P!G7X\ZK\>O"5I\/?CY>^-M/\+_  P^
M,6L:M\,_AQ:^ OCYHTO@:^NY_#.C7'BW0?%>GOK5QX:U4IX-UA[D _+/_@X$
M\6:A^QG^W/\ \$8_^"D]GXGUCPAX!\$_M.R?LS?M&WT.JWND^';_ .%OQ+C&
MHVTVO7*W^FZ&1X8\"3?M ZG:V?B&X^R7PU":03V%EI^J33 'R/\ \'4WCOXN
M_M'_ !L_9Z_X)^_LX>-/%'ASQ9\(/V8/VK_^"B/QK'A*_P#$,%S+X2^%/PO\
M8W?PVT$PZ!/8->:UXDN?AU\1/#&G:>+R[OK2_P#&?AK4'TIH+RQCU8 ^D/VU
M/^"GTM]_P:J^&/VJ[3Q=YGQ9_:5_9C^%W[,\.L6VL7MA?:Q\:/%-U%\%OC_-
MI>J65Y-J-OJNC6?A#XV^)[:%[R6[6;PZUCJ,_F?:I5 /Z(/V#?@9-^RU^Q)^
MRW\"-;GE.O?"?X"_#CP]X]U74=2U._GU/X@VWA6PO?B9XDO]1UVYN+\RZ]XZ
MN?$FOW0N9HX;1[^2WMH+.R@@M8 #_/G^,G[:?[25_P#MYZU_P<6>"?'?C;Q%
M^P?\)_\ @J%IW[(-GX0\/ZQJJ6^M_L^^%/A=HGAJ]\2>'/!6L7L.FVVE_$GX
M5ZAK\C7-Y8P0)\2_&Z>9-I^L"[-N ?Z&/[2/[/\ \'/V]_V8?$?P4\<Z_P"*
M;SX-?&S2/ >OMXD^%7C74/!OB'4=%T?Q3X5^)WA74_#'C/1#]NLK/4[[P_HL
MTT]HQ34]$N+JQD)MKZ2@#^*3XN?\$?OV8O!W_!P3^R[_ ,$Y]%^(/[54?[-7
MQ7_85\0?'[Q?IEQ^TC\0;CQA-\0].\2_M%:7;7-AXL:Z%U8Z4+3X:^& ^EI;
MM$[Q7KF0&\<* ?VD_L7?L7_!O]@WX*P_ ;X&7/Q"O?!4?BG7O&,M[\3O'_B#
MXD>*[K6_$0LDOI)_$7B*>:Z2SBM].L;:RTZU2VLK:. R+ UU<7=Q. ?P+_\
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
ME^.7BUO@U\/]6LK]I+:?2K+6/AG\0/!/B"&:PAE07OC7Q-;VNGV]GXEU*\0
M_M.\7>&?%/\ P4-_X)5>"H_ VM>$H/%O[3'[,/P$^*7AVZ^(R:IKOP[\1ZEK
MV@_#[XM6_ACXEQ:786NK:S\.O'_V<^$?B#%::.+K4O"'B#6D&B3M,=,D /SY
MU#]A[]MGQ?\ M"^'/C?\(?V;O@=^Q3X(LOBW\+OC)^TG^SU9?M0Q^,_AG^U]
MXY^$'BKPSXB\!>+_  YH'A#]FJ32?@A\2_#Y\,PKJ_QATA] USXK:19^'_ G
MQ0\%ZUI\&E^+O @!Z3_P<S?L_']H'_@C+^UK;V5I/=^(O@[IO@[]H'P[Y/V<
MK:CX5^+])U3QI=W"3E"\$/PNNO'H/D3PW$<KQ3H+M8GT^\ /QK_X-H+W7O\
M@HU^UM^VM_P48^,'ANXU+1-*_8]_9+_8 T8ZQ:6=EH>M:GIWP7^',/[2&CV>
MBP:QXAN;JRN_%'PLT'Q-%J^LZHNH7&A_$V**&WL/[0U3P]X> /P8_92\/_%'
MQ/\ MC?LD?\ ! /Q6NN^*O"'[,/_  6J^+?Q8U^#7(6N[6?X6_!F'21KUC8Z
M8^DFUO-)UWPCX&^-WCF&_-M%HUNGC2]UI[*\TK7':U /[WO^"^7[5LW['_\
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
> % !0 4 % !0 4 % !0 4 % !0 4 % !0 4 ?__9

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>8
<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.26.1</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. 04, 2026</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">0001501989<span></span>
</td>
</tr>
<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">CytomX 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>
</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_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>9
<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.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Offerings<br></strong></div></th>
<th class="th">
<div>Aug. 04, 2026 </div>
<div>USD ($) </div>
<div>shares</div>
</th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingAxis=1', window );">Offering: 1</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_OfferingTable', window );"><strong>Offering:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_PrevslyPdFlg', window );">Fee Previously Paid</a></td>
<td class="text">false<span></span>
</td>
</tr>
<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_FeesOthrRuleFlg', window );">Other Rule</a></td>
<td class="text">true<span></span>
</td>
</tr>
<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_OfferingSctyTp', window );">Security Type</a></td>
<td class="text">Equity<span></span>
</td>
</tr>
<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_OfferingSctyTitl', window );">Security Class Title</a></td>
<td class="text">Common Stock, par value $0.00001 per share<span></span>
</td>
</tr>
<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_AmtSctiesRegd', window );">Amount Registered | shares</a></td>
<td class="nump">6,500,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_MaxOfferingPricPerScty', window );">Proposed Maximum Offering Price per Unit</a></td>
<td class="nump">3.19<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_MaxAggtOfferingPric', window );">Maximum Aggregate Offering Price</a></td>
<td class="nump">$ 20,735,000.00<span></span>
</td>
</tr>
<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_FeeRate', window );">Fee Rate</a></td>
<td class="nump">0.01381%<span></span>
</td>
</tr>
<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_FeeAmt', window );">Amount of Registration Fee</a></td>
<td class="nump">$ 2,863.50<span></span>
</td>
</tr>
<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_OfferingNote', window );">Offering Note</a></td>
<td class="text">Note 1(a). Pursuant to Rule 416(a) under the Securities Act of 1933, as amended (the "Securities Act"), this registration statement shall also cover any additional shares of the Registrant's common stock that become issuable under the CytomX Therapeutics, Inc. Amended and Restated 2015 Equity Incentive Plan (the "2015 Plan") or the CytomX Therapeutics, Inc. Amended and Restated Employee Stock Purchase Plan (the "ESPP") by reason of any stock dividend, stock split, recapitalization or similar transaction effected without the Registrant's receipt of consideration which would increase the number of outstanding shares of common stock. Note 1(b). Amount Registered represents the additional shares of common stock available for future issuance under the 2015 Plan and the ESPP resulting from amendments thereto on June 17, 2026, including an additional 6,500,000 shares of common stock under the 2015 Plan and an additional 1,000,000 shares of common stock under the ESPP. Note 1(c). The Proposed Maximum Offering Price Per Unit is estimated solely for purposes of calculating the amount of the registration fee pursuant to Rules 457(c) and 457(h) under the Securities Act. The Proposed Maximum Offering Price Per Share and the Maximum Aggregate Offering Price for the shares issuable under the 2015 Plan are based on $3.19 per share, the average of the high and low prices of the Registrant's common stock as reported on The Nasdaq Global Select Market on July 31, 2026. The Proposed Maximum Offering Price Per Share and the Maximum Aggregate Offering Price for the shares issuable under the ESPP are based on $2.71 per share, representing 85% of $3.19 per share, the average of the high and low prices of the Registrant's common stock as reported on The Nasdaq Global Select Market on July 31, 2026, because the purchase price of shares reserved for issuance under the ESPP is at least 85% of the lower of the fair market value of the Registrant's common stock on the enrollment date or the exercise date of the applicable offering period.<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingAxis=2', window );">Offering: 2</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_OfferingTable', window );"><strong>Offering:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_PrevslyPdFlg', window );">Fee Previously Paid</a></td>
<td class="text">false<span></span>
</td>
</tr>
<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_FeesOthrRuleFlg', window );">Other Rule</a></td>
<td class="text">true<span></span>
</td>
</tr>
<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_OfferingSctyTp', window );">Security Type</a></td>
<td class="text">Equity<span></span>
</td>
</tr>
<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_OfferingSctyTitl', window );">Security Class Title</a></td>
<td class="text">Common Stock, par value $0.00001 per share<span></span>
</td>
</tr>
<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_AmtSctiesRegd', window );">Amount Registered | shares</a></td>
<td class="nump">1,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_MaxOfferingPricPerScty', window );">Proposed Maximum Offering Price per Unit</a></td>
<td class="nump">2.71<span></span>
</td>
</tr>
<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_MaxAggtOfferingPric', window );">Maximum Aggregate Offering Price</a></td>
<td class="nump">$ 2,710,000.00<span></span>
</td>
</tr>
<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_FeeRate', window );">Fee Rate</a></td>
<td class="nump">0.01381%<span></span>
</td>
</tr>
<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_FeeAmt', window );">Amount of Registration Fee</a></td>
<td class="nump">$ 374.25<span></span>
</td>
</tr>
<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_OfferingNote', window );">Offering Note</a></td>
<td class="text">See Offering Note 1.<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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_OfferingAxis=2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=2</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>10
<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.26.1</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. 04, 2026 </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">$ 23,445,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">3,237.75<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_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">$ 3,237.75<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingTableNa', window );">Offering Table N/A</a></td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_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_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_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_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>11
<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>12
<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>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.26.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>3</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="d73385dexfilingfees.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="d73385dexfilingfees.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="d73385dexfilingfees.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="d73385dexfilingfees.htm">d73385dexfilingfees.htm</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="3">http://xbrl.sec.gov/dei/2026</BaseTaxonomy>
    <BaseTaxonomy items="30">http://xbrl.sec.gov/ffd/2026</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>false</HasPresentationLinkbase>
  <HasCalculationLinkbase>false</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>16
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "d73385dexfilingfees.htm": {
   "dts": {
    "inline": {
     "local": [
      "d73385dexfilingfees.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/2026/dei-2026.xsd",
      "https://xbrl.sec.gov/ffd/2026/ffd-2026.xsd"
     ]
    }
   },
   "keyStandard": 21,
   "keyCustom": 0,
   "axisStandard": 1,
   "axisCustom": 0,
   "memberStandard": 1,
   "memberCustom": 0,
   "hidden": {
    "total": 9,
    "http://xbrl.sec.gov/ffd/2026": 7,
    "http://xbrl.sec.gov/dei/2026": 2
   },
   "contextCount": 3,
   "entityCount": 1,
   "segmentCount": 1,
   "elementCount": 107,
   "unitCount": 3,
   "baseTaxonomies": {
    "http://xbrl.sec.gov/ffd/2026": 30,
    "http://xbrl.sec.gov/dei/2026": 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": "d73385dexfilingfees.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": "d73385dexfilingfees.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": "2",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d73385dexfilingfees.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "rc",
      "name": "ffd:TtlOfferingAmt",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "2",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d73385dexfilingfees.htm",
      "first": true,
      "unique": true
     }
    }
   },
   "tag": {
    "ffd_AggtRedRpPricFsclYr": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "localname": "CombinedProspectusTableNa",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "localname": "OfferingLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering [Line Items]",
        "terseLabel": "Offering:"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_OfferingNote": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "localname": "OfferingTableNa",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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": "nonNegativeDecimal8ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "localname": "OffsetTableNa",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "localname": "Securities424iNa",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "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/2026",
     "localname": "SubmissionLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Submission [Line Items]",
        "terseLabel": "Items"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_SubmissnTp": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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/2026",
     "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>17
<FILENAME>0001193125-26-338121-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001193125-26-338121-xbrl.zip
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
M] 1V?86S+G+IZH:S/>AV&X1* KP F$=^1#BK#&B]:<!T+DE<;$]+!74W7DC
M3:\0!()'" R#<@D-E@2=#^$@X9FS="2'R%<'J*\EP.M-M<1--8Q2128,OC'"
M)<B"7KKB?N-A*I21AGD:>(!>,^81O&)*3/L H?"RQ ,C=X(&J9 : -^M-R1\
M$HDK/Q+A$O*";@J@ =PYE24B5^.[.\ _68+RJ#2'ZJ@>(S&L5KQ<XC72=QD)
MKAH "A[ (77S/].3>%A<'!84!3;Q(FT:V1GXC8N,/'(U#Q.UKE_ Q'BD30V^
M)(%8:CUP4G=.'L-$>(0'+C+']'2(]WB'!28 0KP]BS&D8,*BQ5HD=;_)FQ99
M.XT"XN#]$A0O->9:CR@Y 'V@("-:'3(0F28*MG+&$\!^!4_(+:?-@5]0S4!/
M)D(AN],X](U+^QGYF,&R $K_3@+@N-\@>-.E@;*+1(N(V%8<YDWI3;QNXJ:,
M)N]5[$:#(N0*=4&AX(5DWW,WT!+$#04Y&MU!AH*)I58B[(81@2&<G4S"=&V0
M_-P)WTJ+>PI.'57BB20GO3YPIL7$Q_GFV+(_][H_E-MQURF?E@D!4W76A(F"
M.0 QWAGWT.X_8"]^U:-K& U M*(SEJE@#O%?LR+"1XC<0&^/J$5QE45AK P=
ME/N62H_^07X6X01\8,P$K%(0+?X,9:1V03!.US8N^!4UI1=-64G8@"HJ*5_"
MB/>L]PK5\5?59 -S!TW2.!9EP5A31^*I(E">^ %(H()J@HO6"BPGR$4"HJ+*
MQ,8QD,;$1GR94AYC?82\F%;P3@GA 0%8$(="Z-SIH>522[$%BUT.+)N/!AF-
M(">XVG)A9F!S Z_N$M'V'5$?BY!Y7*VDH-RI5DS%0K!CK@[7GR?\+8L]YR]2
M[!7[=[T3:S1FA55N,L57<X+_J:MIAH.-E]&R^V7.L-#<P2M'W)<Z"H[-#=%T
M3U>]/;*)@UIZ-2V O,><(<0?9#7YHFE^93 D&WZC\8_O!_V3WEMP)'*91YF\
MB_!5[L"M&W_7);AGW6ZS:UUM^X6WL\.GI+W455[ B'_-!>02O$2Z>:*9AU=B
MTQFX\/'&W.8I?3,%D)-;4\KOP'X#Y2/'MJ3!CG>]=S)T &AE/4#>W3&C=#.0
M7$H9NIQFFYR#\)U5\.G+?\]!:!C\/0#_\TH%[S-P#HHX:XJY=%OU?+9Q!OX@
M:6V^"4YK-\RJ><->72%?7Y\F"IJN ^P,HC=9J'NI2PC9*EN/K\5NZY[7 FIG
M[/.\_9CO0.)/A]J3Y-/ CF6N- ?^WUY'L==:.=;6#>+S-OZL??1?4$L! A0#
M%     @ U*(&78)<TT\3#   *#\  !<              ( !     &0W,S,X
H-61E>&9I;&EN9V9E97,N:'1M4$L%!@     !  $ 10   $@,      $!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<FILENAME>d73385dexfilingfees_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/2026"
  xmlns:ffd="http://xbrl.sec.gov/ffd/2026"
  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/2026/ffd-2026.xsd"
      xlink:type="simple"/>
    <context id="rc">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001501989</identifier>
        </entity>
        <period>
            <startDate>2026-08-04</startDate>
            <endDate>2026-08-04</endDate>
        </period>
    </context>
    <context id="offrl_1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001501989</identifier>
            <segment>
                <xbrldi:typedMember dimension="ffd:OfferingAxis">
                    <dei:lineNo>1</dei:lineNo>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-08-04</startDate>
            <endDate>2026-08-04</endDate>
        </period>
    </context>
    <context id="offrl_2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001501989</identifier>
            <segment>
                <xbrldi:typedMember dimension="ffd:OfferingAxis">
                    <dei:lineNo>2</dei:lineNo>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-08-04</startDate>
            <endDate>2026-08-04</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-189">S-8</ffd:FormTp>
    <ffd:SubmissnTp contextRef="rc" id="ixv-190">S-8</ffd:SubmissnTp>
    <ffd:FeeExhibitTp contextRef="rc" id="ixv-191">EX-FILING FEES</ffd:FeeExhibitTp>
    <dei:EntityCentralIndexKey contextRef="rc" id="ixv-192">0001501989</dei:EntityCentralIndexKey>
    <dei:EntityRegistrantName contextRef="rc" id="ixv-193">CytomX 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-196">false</ffd:PrevslyPdFlg>
    <ffd:PrevslyPdFlg contextRef="offrl_2" id="ixv-197">false</ffd:PrevslyPdFlg>
    <ffd:FormTp contextRef="rc" id="ixv-231">S-8</ffd:FormTp>
    <dei:EntityRegistrantName contextRef="rc" id="ixv-232">CytomX Therapeutics, Inc.</dei:EntityRegistrantName>
    <ffd:OfferingSctyTp contextRef="offrl_1" id="ixv-233">Equity</ffd:OfferingSctyTp>
    <ffd:OfferingSctyTitl contextRef="offrl_1" id="ixv-234">Common Stock, par value $0.00001 per share</ffd:OfferingSctyTitl>
    <ffd:FeesOthrRuleFlg contextRef="offrl_1" id="ixv-235">true</ffd:FeesOthrRuleFlg>
    <ffd:AmtSctiesRegd
      contextRef="offrl_1"
      decimals="0"
      id="ixv-236"
      unitRef="Shares">6500000</ffd:AmtSctiesRegd>
    <ffd:MaxOfferingPricPerScty
      contextRef="offrl_1"
      decimals="2"
      id="ixv-237"
      unitRef="USD">3.19</ffd:MaxOfferingPricPerScty>
    <ffd:MaxAggtOfferingPric
      contextRef="offrl_1"
      decimals="2"
      id="ixv-238"
      unitRef="USD">20735000.00</ffd:MaxAggtOfferingPric>
    <ffd:FeeRate
      contextRef="offrl_1"
      decimals="7"
      id="ixv-239"
      unitRef="pure">0.0001381</ffd:FeeRate>
    <ffd:FeeAmt
      contextRef="offrl_1"
      decimals="2"
      id="ixv-240"
      unitRef="USD">2863.50</ffd:FeeAmt>
    <ffd:OfferingSctyTp contextRef="offrl_2" id="ixv-241">Equity</ffd:OfferingSctyTp>
    <ffd:OfferingSctyTitl contextRef="offrl_2" id="ixv-242">Common Stock, par value $0.00001 per share</ffd:OfferingSctyTitl>
    <ffd:FeesOthrRuleFlg contextRef="offrl_2" id="ixv-243">true</ffd:FeesOthrRuleFlg>
    <ffd:AmtSctiesRegd
      contextRef="offrl_2"
      decimals="0"
      id="ixv-244"
      unitRef="Shares">1000000</ffd:AmtSctiesRegd>
    <ffd:MaxOfferingPricPerScty
      contextRef="offrl_2"
      decimals="2"
      id="ixv-245"
      unitRef="USD">2.71</ffd:MaxOfferingPricPerScty>
    <ffd:MaxAggtOfferingPric
      contextRef="offrl_2"
      decimals="2"
      id="ixv-246"
      unitRef="USD">2710000.00</ffd:MaxAggtOfferingPric>
    <ffd:FeeRate
      contextRef="offrl_2"
      decimals="7"
      id="ixv-247"
      unitRef="pure">0.0001381</ffd:FeeRate>
    <ffd:FeeAmt
      contextRef="offrl_2"
      decimals="2"
      id="ixv-248"
      unitRef="USD">374.25</ffd:FeeAmt>
    <ffd:TtlOfferingAmt contextRef="rc" decimals="2" id="ixv-249" unitRef="USD">23445000.00</ffd:TtlOfferingAmt>
    <ffd:TtlFeeAmt contextRef="rc" decimals="2" id="ixv-250" unitRef="USD">3237.75</ffd:TtlFeeAmt>
    <ffd:TtlOffsetAmt contextRef="rc" decimals="2" id="ixv-251" unitRef="USD">0.00</ffd:TtlOffsetAmt>
    <ffd:NetFeeAmt contextRef="rc" decimals="2" id="ixv-252" unitRef="USD">3237.75</ffd:NetFeeAmt>
    <ffd:OfferingNote contextRef="offrl_1" id="ixv-253">Note 1(a). Pursuant to Rule 416(a) under the Securities Act of 1933, as amended (the "Securities Act"), this registration statement shall also cover any additional shares of the Registrant's common stock that become issuable under the CytomX Therapeutics, Inc. Amended and Restated 2015 Equity Incentive Plan (the "2015 Plan") or the CytomX Therapeutics, Inc. Amended and Restated Employee Stock Purchase Plan (the "ESPP") by reason of any stock dividend, stock split, recapitalization or similar transaction effected without the Registrant's receipt of consideration which would increase the number of outstanding shares of common stock. Note 1(b). Amount Registered represents the additional shares of common stock available for future issuance under the 2015 Plan and the ESPP resulting from amendments thereto on June 17, 2026, including an additional 6,500,000 shares of common stock under the 2015 Plan and an additional 1,000,000 shares of common stock under the ESPP. Note 1(c). The Proposed Maximum Offering Price Per Unit is estimated solely for purposes of calculating the amount of the registration fee pursuant to Rules 457(c) and 457(h) under the Securities Act. The Proposed Maximum Offering Price Per Share and the Maximum Aggregate Offering Price for the shares issuable under the 2015 Plan are based on $3.19 per share, the average of the high and low prices of the Registrant's common stock as reported on The Nasdaq Global Select Market on July 31, 2026. The Proposed Maximum Offering Price Per Share and the Maximum Aggregate Offering Price for the shares issuable under the ESPP are based on $2.71 per share, representing 85% of $3.19 per share, the average of the high and low prices of the Registrant's common stock as reported on The Nasdaq Global Select Market on July 31, 2026, because the purchase price of shares reserved for issuance under the ESPP is at least 85% of the lower of the fair market value of the Registrant's common stock on the enrollment date or the exercise date of the applicable offering period.</ffd:OfferingNote>
    <ffd:OfferingNote contextRef="offrl_2" id="ixv-254">See Offering Note 1.</ffd:OfferingNote>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
