<SEC-DOCUMENT>0001437749-25-014039.txt : 20250501
<SEC-HEADER>0001437749-25-014039.hdr.sgml : 20250501
<ACCEPTANCE-DATETIME>20250501131628
ACCESSION NUMBER:		0001437749-25-014039
CONFORMED SUBMISSION TYPE:	8-K
PUBLIC DOCUMENT COUNT:		14
CONFORMED PERIOD OF REPORT:	20250429
ITEM INFORMATION:		Submission of Matters to a Vote of Security Holders
FILED AS OF DATE:		20250501
DATE AS OF CHANGE:		20250501

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			CPS TECHNOLOGIES CORP/DE/
		CENTRAL INDEX KEY:			0000814676
		STANDARD INDUSTRIAL CLASSIFICATION:	POTTERY & RELATED PRODUCTS [3260]
		ORGANIZATION NAME:           	04 Manufacturing
		EIN:				042832509
		STATE OF INCORPORATION:			MA
		FISCAL YEAR END:			1228

	FILING VALUES:
		FORM TYPE:		8-K
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-36807
		FILM NUMBER:		25901561

	BUSINESS ADDRESS:	
		STREET 1:		111 SOUTH WORCESTER STREET
		CITY:			NORTON
		STATE:			MA
		ZIP:			02766
		BUSINESS PHONE:		508-222-0614

	MAIL ADDRESS:	
		STREET 1:		111 SOUTH WORCESTER STREET
		CITY:			NORTON
		STATE:			MA
		ZIP:			02766

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	CERAMICS PROCESS SYSTEMS CORP/DE/
		DATE OF NAME CHANGE:	19920703
</SEC-HEADER>
<DOCUMENT>
<TYPE>8-K
<SEQUENCE>1
<FILENAME>cpsh20250501_8k.htm
<DESCRIPTION>FORM 8-K
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:naics="http://xbrl.sec.gov/naics/2024" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:us-types="http://fasb.org/us-types/2024" xmlns:utreg="http://www.xbrl.org/2009/utr" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:us-roles="http://fasb.org/us-roles/2020-01-31" xmlns:stpr="http://xbrl.sec.gov/stpr/2024" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:thunderdome="http://www.RDGFilings.com" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xmlns:dei="http://xbrl.sec.gov/dei/2024" xmlns:us-gaap="http://fasb.org/us-gaap/2024" xmlns:country="http://xbrl.sec.gov/country/2024" xmlns:rr="http://xbrl.sec.gov/rr/2018-01-31" xmlns:sic="http://xbrl.sec.gov/sic/2024" xmlns:currency="http://xbrl.sec.gov/currency/2024" xmlns:exch="http://xbrl.sec.gov/exch/2024" xmlns:srt="http://fasb.org/srt/2024" xmlns:cyd="http://xbrl.sec.gov/cyd/2024" xmlns:cpsh="http://www.cpsh.com/20250429"><head>
	<title>cpsh20250501_8k.htm</title>

	<!-- Generated by ThunderDome Portal - 5/1/2025 3:45:52 PM -->
<meta http-equiv="Content-Type" content="text/html"/></head>
<body style="font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding: 0in 0.1in; cursor: auto;"><div style="display: none">
<ix:header>
<ix:hidden>
<ix:nonNumeric contextRef="d20258K" name="dei:AmendmentFlag" id="ixv-398">false</ix:nonNumeric>
<ix:nonNumeric contextRef="d20258K" name="dei:EntityCentralIndexKey" id="ixv-399">0000814676</ix:nonNumeric>

</ix:hidden>
<ix:references>
<link:schemaRef xlink:href="cpsh-20250429.xsd" xlink:type="simple"/>
</ix:references>
<ix:resources>
<xbrli:context id="d20258K">
<xbrli:entity>
<xbrli:identifier scheme="http://www.sec.gov/CIK">0000814676</xbrli:identifier>
</xbrli:entity>
<xbrli:period>
<xbrli:startDate>2025-04-29</xbrli:startDate>
<xbrli:endDate>2025-04-29</xbrli:endDate>
</xbrli:period>
</xbrli:context>



</ix:resources>
</ix:header>
</div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>UNITED STATES</b></div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>SECURITIES AND EXCHANGE COMMISSION</b></div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>Washington, DC 20549</b></div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">&#160;</div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>FORM <ix:nonNumeric contextRef="d20258K" name="dei:DocumentType" id="ixv-409">8-K</ix:nonNumeric></b></div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>Current Repor</b>t</div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>Pursuant to Section 13 or 15(d) of the Securities Exchange Act of 1934</b></div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">Date of Report (Date of earliest event reported): <ix:nonNumeric contextRef="d20258K" format="ixt:datemonthdayyearen" name="dei:DocumentPeriodEndDate" id="ixv-410">April 29, 2025</ix:nonNumeric></div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><ix:nonNumeric contextRef="d20258K" name="dei:EntityRegistrantName" id="ixv-411">CPS TECHNOLOGIES CORP.</ix:nonNumeric></b></div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><i>(Exact Name of Registrant as Specified in its Charter)</i></div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;">

		<tbody><tr>
			<td style="vertical-align:top;width:7.3%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><ix:nonNumeric contextRef="d20258K" format="ixt-sec:stateprovnameen" name="dei:EntityIncorporationStateCountryCode" id="ixv-412">Delaware</ix:nonNumeric></b></div>
			</td>
			<td style="vertical-align:top;width:6.9%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><ix:nonNumeric contextRef="d20258K" name="dei:EntityFileNumber" id="ixv-413">0-16088</ix:nonNumeric></b></div>
			</td>
			<td style="vertical-align:top;width:7.3%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><ix:nonNumeric contextRef="d20258K" name="dei:EntityTaxIdentificationNumber" id="ixv-414">04-2832509</ix:nonNumeric></b></div>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:7.3%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><i>(State or other jurisdiction of</i></div>

			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><i>incorporation)</i></div>
			</td>
			<td style="vertical-align:top;width:6.9%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><i>(Commission File Number)</i></div>
			</td>
			<td style="vertical-align:top;width:7.3%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><i>(IRS Employer Identification No.)</i></div>
			</td>
		</tr>
		<tr>
			<td colspan="2" style="vertical-align:top;width:7.3%;">&#160;</td>
			<td style="vertical-align:top;width:7.3%;">&#160;</td>
		</tr>
		<tr>
			<td colspan="2" style="vertical-align:top;width:7.3%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><ix:nonNumeric contextRef="d20258K" name="dei:EntityAddressAddressLine1" id="ixv-415">111 South Worcester Street</ix:nonNumeric>, <ix:nonNumeric contextRef="d20258K" name="dei:EntityAddressCityOrTown" id="ixv-416">Norton</ix:nonNumeric>, <ix:nonNumeric contextRef="d20258K" format="ixt-sec:stateprovnameen" name="dei:EntityAddressStateOrProvince" id="ixv-417">Massachusetts</ix:nonNumeric></b></div>
			</td>
			<td style="vertical-align:top;width:7.3%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><ix:nonNumeric contextRef="d20258K" name="dei:EntityAddressPostalZipCode" id="ixv-418">02766</ix:nonNumeric></b></div>
			</td>
		</tr>
		<tr>
			<td colspan="2" style="vertical-align:top;width:7.3%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><i>(Address of principal executive offices)</i></div>
			</td>
			<td style="vertical-align:top;width:7.3%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><i>(Zip Code)</i></div>
			</td>
		</tr>

</tbody></table>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;">

		<tbody><tr>
			<td style="vertical-align:top;width:14.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><ix:nonNumeric contextRef="d20258K" name="dei:CityAreaCode" id="ixv-419">508</ix:nonNumeric>-<ix:nonNumeric contextRef="d20258K" name="dei:LocalPhoneNumber" id="ixv-420">222-0614</ix:nonNumeric></b></div>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:14.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><i>(Registrant</i>&#8217;<i>s telephone number, including area code)</i></div>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:14.2%;">&#160;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:14.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>N/A</b></div>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:14.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">(Former name or former address, if changed since last report.)</div>
			</td>
		</tr>

</tbody></table>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Check the appropriate box below if the Form 8-K filing is intended to simultaneously satisfy the filing obligation of the registrant under any of the following provisions (<span style="text-decoration: underline;">see</span> General Instruction A.2. below):</div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">
			<div style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><ix:nonNumeric contextRef="d20258K" format="ixt-sec:boolballotbox" name="dei:WrittenCommunications" id="ixv-421">&#9744;</ix:nonNumeric></div>
			</td>
			<td style="width: auto;">
			<div style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">Written communications pursuant to Rule 425 under the Securities Act (17 CFR 230.425)</div>
			</td>
		</tr>

</tbody></table>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">
			<div style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><ix:nonNumeric contextRef="d20258K" format="ixt-sec:boolballotbox" name="dei:SolicitingMaterial" id="ixv-422">&#9744;</ix:nonNumeric></div>
			</td>
			<td style="width: auto;">
			<div style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">Soliciting material pursuant to Rule 14a-12 under the exchange Act (17 CFR 240.14a-12)</div>
			</td>
		</tr>

</tbody></table>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">
			<div style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><ix:nonNumeric contextRef="d20258K" format="ixt-sec:boolballotbox" name="dei:PreCommencementTenderOffer" id="ixv-423">&#9744;</ix:nonNumeric></div>
			</td>
			<td style="width: auto;">
			<div style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">Pre-commencement communications pursuant to rule 14d-2(b) under the Exchange Act (17CFR 240.14d-2(b))</div>
			</td>
		</tr>

</tbody></table>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">
			<div style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><ix:nonNumeric contextRef="d20258K" format="ixt-sec:boolballotbox" name="dei:PreCommencementIssuerTenderOffer" id="ixv-424">&#9744;</ix:nonNumeric></div>
			</td>
			<td style="width: auto;">
			<div style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">Pre-commencement communications pursuant to Rule 13e-4(c)) under the Exchange Act (17 CFR 240.13e-4( c)).</div>
			</td>
		</tr>

</tbody></table>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Indicate by check mark whether the registrant is an emerging growth company as defined in Rule 405 of the Securities Act of 1933 (&#167; 230.405 of this chapter) or Rule 12b-2 of the Securities Act of 1934 (&#167; 240.12b-2 of this chapter)</div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Emerging growth company&#160;<ix:nonNumeric contextRef="d20258K" format="ixt-sec:boolballotbox" name="dei:EntityEmergingGrowthCompany" id="ixv-425">&#9744;</ix:nonNumeric></div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act.&#160;&#9744;</div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Securities registered pursuant to Section(b) of the Act:</div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;">

		<tbody><tr>
			<td style="border-bottom:solid 1px #000000;vertical-align:bottom;width:7.9%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Title of each class</div>
			</td>
			<td style="vertical-align:bottom;width:0.2%;">&#160;</td>
			<td style="border-bottom:solid 1px #000000;vertical-align:bottom;width:5.1%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Trading Symbol(s)</div>
			</td>
			<td style="vertical-align:bottom;width:0.2%;">&#160;</td>
			<td style="border-bottom:solid 1px #000000;vertical-align:bottom;width:7.9%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Name of each exchange on which registered</div>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:bottom;width:7.9%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><ix:nonNumeric contextRef="d20258K" name="dei:Security12bTitle" id="ixv-426">Common Stock</ix:nonNumeric>, $0.01 par value</b></div>
			</td>
			<td style="vertical-align:bottom;width:0.2%;">&#160;</td>
			<td style="vertical-align:bottom;width:5.1%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><ix:nonNumeric contextRef="d20258K" name="dei:TradingSymbol" id="ixv-427">CPSH</ix:nonNumeric></b></div>
			</td>
			<td style="vertical-align:bottom;width:0.2%;">&#160;</td>
			<td style="vertical-align:bottom;width:7.9%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><ix:nonNumeric contextRef="d20258K" format="ixt-sec:exchnameen" name="dei:SecurityExchangeName" id="ixv-428">NASDAQ</ix:nonNumeric> Capital Markets</b></div>
			</td>
		</tr>

</tbody></table>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM">&#160;</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000"/>
<div class="PGHDR" style="text-align: left; width: 100%">
<div class="hf-row">
<div class="hf-cell TOCLink">&#160;</div>
</div>
</div>
</div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Item 5.07 Submission of Matters to a Vote of Security Holders.</b></div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">On April 29, 2025, CPS Technologies Corp. (&#8220;CPS&#8221; or the &#8220;Company&#8221;) held its 2025 Annual Meeting of Stockholders (the &#8220;Annual Meeting&#8221;). Of the 14,525,960 shares of the Company&#8217;s common stock outstanding and eligible to vote at the Annual Meeting, 7,661,702 shares, or 52.7% of the eligible common stock, were present either in person or by proxy. Based on the results reported by an independent inspector of elections, in excess of 85% of votes cast at the Annual Meeting were in support of each of the Company&#8217;s five nominees. The final results of the matters voted on at the Annual Meeting are provided below:</div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline;">Proposal 1:</span> The following individuals were elected as directors to hold office until the next annual meeting of stockholders or until their respective successors are elected and qualified.</div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;">

		<tbody><tr>
			<td style="border-bottom:solid 1px #000000;vertical-align:bottom;width:24.1%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Director Name</div>
			</td>
			<td style="vertical-align:bottom;width:auto;">&#160;</td>
			<td colspan="2" style="border-bottom:solid 1px #000000;vertical-align:bottom;width:auto;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">For</div>
			</td>
			<td style="vertical-align:bottom;width:auto;">&#160;</td>
			<td style="vertical-align:bottom;width:auto;">&#160;</td>
			<td colspan="2" style="border-bottom:solid 1px #000000;vertical-align:bottom;width:auto;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">For (%)</div>
			</td>
			<td style="vertical-align:bottom;width:auto;">&#160;</td>
			<td style="vertical-align:bottom;width:auto;">&#160;</td>
			<td colspan="2" style="border-bottom:solid 1px #000000;vertical-align:bottom;width:auto;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">Against</div>
			</td>
			<td style="vertical-align:bottom;width:auto;">&#160;</td>
			<td style="vertical-align:bottom;width:auto;">&#160;</td>
			<td colspan="2" style="border-bottom:solid 1px #000000;vertical-align:bottom;width:auto;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">Abstained</div>
			</td>
			<td style="vertical-align:bottom;width:auto;">&#160;</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:bottom;width:auto;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Grant C. Bennett</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:4.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">4,360,963</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:4.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">87.8</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:4.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">584,475</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:4.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">22,407</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:bottom;width:auto;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Francis J. Hughes, Jr.</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:4.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">4,757,655</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:4.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">95.8</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:4.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">187,683</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:4.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">22,507</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:bottom;width:auto;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Daniel C. Snow</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:4.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">4,775,073</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:4.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">96.1</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:4.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">148,687</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:4.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">44,085</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:bottom;width:auto;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">I. James Cavoli</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:4.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">4,943,674</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:4.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">99.5</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:4.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">8,497</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:4.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">15,674</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:bottom;width:auto;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Ralph M. Norwood</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:4.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">4,829,152</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:4.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">97.2</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:4.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">116,119</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:4.2%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">22,574</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
		</tr>

</tbody></table>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline;">Proposal 2:</span>&#160; Advisory vote to approve named executive officer compensation.</div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<table cellpadding="0" cellspacing="0" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 85%; margin-left: 0pt; margin-right: auto;">

		<tbody><tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: auto; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<div style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">For</div>
			</td>
			<td style="vertical-align: bottom; width: auto; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: auto; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<div style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Against</div>
			</td>
			<td style="vertical-align: bottom; width: auto; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: bottom; width: auto; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<div style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Abstained</div>
			</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);">
			<td style="vertical-align: bottom; width: 8.2%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<div style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">4,787,691 (96.4%)</div>
			</td>
			<td style="vertical-align: bottom; width: 0.5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="vertical-align: bottom; width: 0.5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="vertical-align: bottom; width: 8.2%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<div style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">147,883 (3.0%)</div>
			</td>
			<td style="vertical-align: bottom; width: 0.5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="vertical-align: bottom; width: 0.5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="vertical-align: bottom; width: 8.2%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<div style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;">32,271 (0.6%)</div>
			</td>
		</tr>

</tbody></table>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><span style="text-decoration: underline;">Proposal 3</span>: &#160;Ratification of selection of independent registered Public Accounting Firm</div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;">

		<tbody><tr>
			<td style="border-bottom:solid 1px #000000;vertical-align:bottom;width:auto;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">For</div>
			</td>
			<td style="vertical-align:bottom;width:auto;">&#160;</td>
			<td colspan="2" style="border-bottom:solid 1px #000000;vertical-align:bottom;width:auto;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">Against</div>
			</td>
			<td style="vertical-align:bottom;width:auto;">&#160;</td>
			<td colspan="2" style="border-bottom:solid 1px #000000;vertical-align:bottom;width:auto;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">Abstained</div>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:bottom;width:5.6%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">7,246,420 (94.6%)</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:5.6%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">3,686 (0.0%)</div>
			</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:0.5%;">&#160;</td>
			<td style="vertical-align:bottom;width:5.6%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">411,596 (5.4%)</div>
			</td>
		</tr>

</tbody></table>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>SIGNATURE</b></div>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

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

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;">

		<tbody><tr>
			<td colspan="2" style="vertical-align:top;width:0.1%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><span style="text-decoration: underline;">CPS Technologies Corp.</span></b></div>

			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">(Registrant)</div>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:3%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Date: May 1, 2025</div>
			</td>
			<td style="vertical-align:bottom;width:2.9%;">
			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">/s/ Charles K. Griffith Jr.</div>

			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Charles K. Griffith Jr.</div>

			<div style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Chief Financial Officer</div>
			</td>
		</tr>

</tbody></table>

<div style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</div>

<div class="LAST-PAGE-BREAK">
<div class="PGFTR">
<div class="hf-row">
<div class="hf-cell PGNUM">&#160;</div>
</div>
</div>
</div>


</body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>2
<FILENAME>cpsh-20250429.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome Portal - 5/1/2025 5:15:21 PM-->
<xsd:schema xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:stpr="http://xbrl.sec.gov/stpr/2024" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:dei="http://xbrl.sec.gov/dei/2024" xmlns:country="http://xbrl.sec.gov/country/2024" xmlns:sic="http://xbrl.sec.gov/sic/2024" xmlns:currency="http://xbrl.sec.gov/currency/2024" xmlns:exch="http://xbrl.sec.gov/exch/2024" xmlns:cyd="http://xbrl.sec.gov/cyd/2024" xmlns:cpsh="http://www.cpsh.com/20250429" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.cpsh.com/20250429">
<xsd:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd"/>
<xsd:import namespace="http://www.xbrl.org/2009/role/negated" schemaLocation="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd"/>
<xsd:import namespace="http://xbrl.sec.gov/stpr/2024" schemaLocation="https://xbrl.sec.gov/stpr/2024/stpr-2024.xsd"/>
<xsd:import namespace="http://www.xbrl.org/dtr/type/2020-01-21" schemaLocation="https://www.xbrl.org/dtr/type/2020-01-21/types.xsd"/>
<xsd:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd"/>
<xsd:import namespace="http://xbrl.sec.gov/dei/2024" schemaLocation="https://xbrl.sec.gov/dei/2024/dei-2024.xsd"/>
<xsd:import namespace="http://xbrl.sec.gov/country/2024" schemaLocation="https://xbrl.sec.gov/country/2024/country-2024.xsd"/>
<xsd:import namespace="http://xbrl.sec.gov/sic/2024" schemaLocation="https://xbrl.sec.gov/sic/2024/sic-2024.xsd"/>
<xsd:import namespace="http://xbrl.sec.gov/currency/2024" schemaLocation="https://xbrl.sec.gov/currency/2024/currency-2024.xsd"/>
<xsd:import namespace="http://xbrl.sec.gov/exch/2024" schemaLocation="https://xbrl.sec.gov/exch/2024/exch-2024.xsd"/>
<xsd:import namespace="http://xbrl.sec.gov/cyd-8k-sub/2024" schemaLocation="https://xbrl.sec.gov/cyd/2024/cyd-8k-sub-2024.xsd"/>

<xsd:annotation>
<xsd:appinfo>
<link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="cpsh-20250429_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:type="simple"/>
<link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="cpsh-20250429_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple"/>
<link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="cpsh-20250429_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:type="simple"/>
<link:roleType id="statement-document-and-entity-information" roleURI="http://www.cpsh.com/20250429/role/statement-document-and-entity-information">
<link:definition xmlns="http://www.xbrl.org/2003/linkbase">000 - Document - Document And Entity Information</link:definition>
<link:usedOn>link:calculationLink</link:usedOn>
<link:usedOn>link:definitionLink</link:usedOn>
<link:usedOn>link:presentationLink</link:usedOn>
</link:roleType>
</xsd:appinfo>
</xsd:annotation>
<xsd:element abstract="true" id="cpsh_DocumentAndEntityInformation" name="DocumentAndEntityInformation" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
</xsd:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>3
<FILENAME>cpsh-20250429_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome Portal - 5/1/2025 5:15:21 PM-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
<link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" xlink:type="simple"/>
<link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" xlink:type="simple"/>
<link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" xlink:type="simple"/>
<link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" xlink:type="simple"/>
<link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" xlink:type="simple"/>
<link:roleRef roleURI="http://www.cpsh.com/20250429/role/statement-document-and-entity-information" xlink:href="cpsh-20250429.xsd#statement-document-and-entity-information" xlink:type="simple"/>
<link:definitionLink xlink:role="http://www.cpsh.com/20250429/role/statement-document-and-entity-information" xlink:type="extended">
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentInformationTable" xlink:label="dei_DocumentInformationTable" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentInformationLineItems" xlink:label="dei_DocumentInformationLineItems" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentType" xlink:label="dei_DocumentType" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_WrittenCommunications" xlink:label="dei_WrittenCommunications" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_SolicitingMaterial" xlink:label="dei_SolicitingMaterial" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_PreCommencementTenderOffer" xlink:label="dei_PreCommencementTenderOffer" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="dei_PreCommencementIssuerTenderOffer" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" xlink:type="locator"/>
<link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
<link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>

<link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="dei_DocumentInformationTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>


<link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentInformationTable" xlink:type="arc"/>
<link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentType" xlink:type="arc"/>
<link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentPeriodEndDate" xlink:type="arc"/>
<link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityRegistrantName" xlink:type="arc"/>
<link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityIncorporationStateCountryCode" xlink:type="arc"/>
<link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityFileNumber" xlink:type="arc"/>
<link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityTaxIdentificationNumber" xlink:type="arc"/>
<link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressAddressLine1" xlink:type="arc"/>
<link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressCityOrTown" xlink:type="arc"/>
<link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressStateOrProvince" xlink:type="arc"/>
<link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressPostalZipCode" xlink:type="arc"/>
<link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_CityAreaCode" xlink:type="arc"/>
<link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_LocalPhoneNumber" xlink:type="arc"/>
<link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_WrittenCommunications" xlink:type="arc"/>
<link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_SolicitingMaterial" xlink:type="arc"/>
<link:definitionArc order="15" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_PreCommencementTenderOffer" xlink:type="arc"/>
<link:definitionArc order="16" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_PreCommencementIssuerTenderOffer" xlink:type="arc"/>
<link:definitionArc order="17" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityEmergingGrowthCompany" xlink:type="arc"/>
<link:definitionArc order="18" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_Security12bTitle" xlink:type="arc"/>
<link:definitionArc order="19" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_TradingSymbol" xlink:type="arc"/>
<link:definitionArc order="20" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_SecurityExchangeName" xlink:type="arc"/>
<link:definitionArc order="21" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AmendmentFlag" xlink:type="arc"/>
<link:definitionArc order="22" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCentralIndexKey" xlink:type="arc"/>

</link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>4
<FILENAME>cpsh-20250429_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome Portal - 5/1/2025 5:15:21 PM-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
<link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" xlink:type="simple"/>
<link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" xlink:type="simple"/>
<link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" xlink:type="simple"/>
<link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" xlink:type="simple"/>
<link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" xlink:type="simple"/>
<link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" xlink:type="simple"/>
<link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" xlink:type="simple"/>
<link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
<link:label xlink:label="dei_EntityDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity [Domain]</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityDomain" xlink:to="dei_EntityDomain-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
<link:label xlink:label="dei_LegalEntityAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Legal Entity [Axis]</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LegalEntityAxis" xlink:to="dei_LegalEntityAxis-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentInformationLineItems" xlink:label="dei_DocumentInformationLineItems" xlink:type="locator"/>
<link:label xlink:label="dei_DocumentInformationLineItems-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Information [Line Items]</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentInformationLineItems-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentInformationTable" xlink:label="dei_DocumentInformationTable" xlink:type="locator"/>
<link:label xlink:label="dei_DocumentInformationTable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Information [Table]</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentInformationTable" xlink:to="dei_DocumentInformationTable-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentType" xlink:label="dei_DocumentType" xlink:type="locator"/>
<link:label xlink:label="dei_DocumentType-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document, Type</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" xlink:type="locator"/>
<link:label xlink:label="dei_DocumentPeriodEndDate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document, Period End Date</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" xlink:type="locator"/>
<link:label xlink:label="dei_EntityRegistrantName-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity, Registrant Name</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" xlink:type="locator"/>
<link:label xlink:label="dei_EntityIncorporationStateCountryCode-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity, Incorporation, State or Country Code</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" xlink:type="locator"/>
<link:label xlink:label="dei_EntityFileNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity, File Number</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFileNumber" xlink:to="dei_EntityFileNumber-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" xlink:type="locator"/>
<link:label xlink:label="dei_EntityTaxIdentificationNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity, Tax Identification Number</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" xlink:type="locator"/>
<link:label xlink:label="dei_EntityAddressAddressLine1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity, Address, Address Line One</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" xlink:type="locator"/>
<link:label xlink:label="dei_EntityAddressCityOrTown-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity, Address, City or Town</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" xlink:type="locator"/>
<link:label xlink:label="dei_EntityAddressStateOrProvince-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity, Address, State or Province</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" xlink:type="locator"/>
<link:label xlink:label="dei_EntityAddressPostalZipCode-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity, Address, Postal Zip Code</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" xlink:type="locator"/>
<link:label xlink:label="dei_CityAreaCode-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">City Area Code</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CityAreaCode" xlink:to="dei_CityAreaCode-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" xlink:type="locator"/>
<link:label xlink:label="dei_LocalPhoneNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Local Phone Number</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_WrittenCommunications" xlink:label="dei_WrittenCommunications" xlink:type="locator"/>
<link:label xlink:label="dei_WrittenCommunications-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Written Communications</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_WrittenCommunications" xlink:to="dei_WrittenCommunications-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_SolicitingMaterial" xlink:label="dei_SolicitingMaterial" xlink:type="locator"/>
<link:label xlink:label="dei_SolicitingMaterial-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Soliciting Material</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SolicitingMaterial" xlink:to="dei_SolicitingMaterial-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_PreCommencementTenderOffer" xlink:label="dei_PreCommencementTenderOffer" xlink:type="locator"/>
<link:label xlink:label="dei_PreCommencementTenderOffer-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Pre-commencement Tender Offer</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_PreCommencementTenderOffer" xlink:to="dei_PreCommencementTenderOffer-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="dei_PreCommencementIssuerTenderOffer" xlink:type="locator"/>
<link:label xlink:label="dei_PreCommencementIssuerTenderOffer-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Pre-commencement Issuer Tender Offer</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_PreCommencementIssuerTenderOffer" xlink:to="dei_PreCommencementIssuerTenderOffer-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" xlink:type="locator"/>
<link:label xlink:label="dei_EntityEmergingGrowthCompany-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity, Emerging Growth Company</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" xlink:type="locator"/>
<link:label xlink:label="dei_Security12bTitle-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Title of 12(b) Security</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12bTitle" xlink:to="dei_Security12bTitle-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" xlink:type="locator"/>
<link:label xlink:label="dei_TradingSymbol-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Symbol</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_TradingSymbol" xlink:to="dei_TradingSymbol-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" xlink:type="locator"/>
<link:label xlink:label="dei_SecurityExchangeName-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Security Exchange Name</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityExchangeName" xlink:to="dei_SecurityExchangeName-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" xlink:type="locator"/>
<link:label xlink:label="dei_AmendmentFlag-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amendment Flag</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag-label" xlink:type="arc"/>

<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" xlink:type="locator"/>
<link:label xlink:label="dei_EntityCentralIndexKey-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity, Central Index Key</link:label>
<link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey-label" xlink:type="arc"/>

</link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>5
<FILENAME>cpsh-20250429_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome Portal - 5/1/2025 5:15:21 PM-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
<link:roleRef roleURI="http://www.cpsh.com/20250429/role/statement-document-and-entity-information" xlink:href="cpsh-20250429.xsd#statement-document-and-entity-information" xlink:type="simple"/>
<link:presentationLink xlink:role="http://www.cpsh.com/20250429/role/statement-document-and-entity-information" xlink:type="extended">
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentInformationTable" xlink:label="dei_DocumentInformationTable" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentInformationLineItems" xlink:label="dei_DocumentInformationLineItems" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentType" xlink:label="dei_DocumentType" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_WrittenCommunications" xlink:label="dei_WrittenCommunications" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_SolicitingMaterial" xlink:label="dei_SolicitingMaterial" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_PreCommencementTenderOffer" xlink:label="dei_PreCommencementTenderOffer" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="dei_PreCommencementIssuerTenderOffer" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" xlink:type="locator"/>
<link:loc xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" xlink:type="locator"/>
<link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>

<link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>

<link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationTable" xlink:to="dei_DocumentInformationLineItems" xlink:type="arc"/>
<link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityRegistrantName" xlink:type="arc"/>
<link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentType" xlink:type="arc"/>
<link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentPeriodEndDate" xlink:type="arc"/>
<link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityIncorporationStateCountryCode" xlink:type="arc"/>
<link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityFileNumber" xlink:type="arc"/>
<link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityTaxIdentificationNumber" xlink:type="arc"/>
<link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressAddressLine1" xlink:type="arc"/>
<link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressCityOrTown" xlink:type="arc"/>
<link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressStateOrProvince" xlink:type="arc"/>
<link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressPostalZipCode" xlink:type="arc"/>
<link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_CityAreaCode" xlink:type="arc"/>
<link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_LocalPhoneNumber" xlink:type="arc"/>
<link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_WrittenCommunications" xlink:type="arc"/>
<link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_SolicitingMaterial" xlink:type="arc"/>
<link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_PreCommencementTenderOffer" xlink:type="arc"/>
<link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_PreCommencementIssuerTenderOffer" xlink:type="arc"/>
<link:presentationArc order="16" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityEmergingGrowthCompany" xlink:type="arc"/>
<link:presentationArc order="17" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_Security12bTitle" xlink:type="arc"/>
<link:presentationArc order="18" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_TradingSymbol" xlink:type="arc"/>
<link:presentationArc order="19" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_SecurityExchangeName" xlink:type="arc"/>
<link:presentationArc order="20" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AmendmentFlag" xlink:type="arc"/>
<link:presentationArc order="21" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCentralIndexKey" xlink:type="arc"/>

</link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>7
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Document And Entity Information<br></strong></div></th>
<th class="th"><div>Apr. 29, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentInformationLineItems', window );"><strong>Document Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity, Registrant Name</a></td>
<td class="text">CPS TECHNOLOGIES CORP.<span></span>
</td>
</tr>
<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_DocumentType', window );">Document, Type</a></td>
<td class="text">8-K<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document, Period End Date</a></td>
<td class="text">Apr. 29,  2025<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity, Incorporation, State or Country Code</a></td>
<td class="text">DE<span></span>
</td>
</tr>
<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_EntityFileNumber', window );">Entity, File Number</a></td>
<td class="text">0-16088<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity, Tax Identification Number</a></td>
<td class="text">04-2832509<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressAddressLine1', window );">Entity, Address, Address Line One</a></td>
<td class="text">111 South Worcester Street<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity, Address, City or Town</a></td>
<td class="text">Norton<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity, Address, State or Province</a></td>
<td class="text">MA<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity, Address, Postal Zip Code</a></td>
<td class="text">02766<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">508<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">222-0614<span></span>
</td>
</tr>
<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_WrittenCommunications', window );">Written Communications</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_SolicitingMaterial', window );">Soliciting Material</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_dei_PreCommencementTenderOffer', window );">Pre-commencement Tender Offer</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_PreCommencementIssuerTenderOffer', window );">Pre-commencement Issuer Tender Offer</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_dei_EntityEmergingGrowthCompany', window );">Entity, Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">CPSH<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NASDAQ<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity, Central Index Key</a></td>
<td class="text">0000814676<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentInformationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressStateOrProvince</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:stateOrProvinceItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_PreCommencementIssuerTenderOffer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act.</p></div>
<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 13e<br> -Subsection 4c<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_PreCommencementIssuerTenderOffer</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_PreCommencementTenderOffer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act.</p></div>
<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 14d<br> -Subsection 2b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_PreCommencementTenderOffer</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SolicitingMaterial">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as soliciting material pursuant to Rule 14a-12 under the Exchange Act.</p></div>
<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 14a<br> -Subsection 12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SolicitingMaterial</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_WrittenCommunications">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as written communications pursuant to Rule 425 under the Securities Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br> -Section 425<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_WrittenCommunications</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>8
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    (  UJH5I&QTU(E0   ,T    0    9&]C4')O<',O87!P+GAM
M;$W/30O", P&X+]2=K>9BAZD#D0]BIZ\SRYUA;8I;83Z[^T$/VYY><@;HBZ)
M(B:VF$7Q+N1M,S+'#4#6(_H^R\JABJ'D>ZXQW8&,L1H/I!\> \.B;=> A3$,
M.,SBM[#IU"Y&9W7/ED)WLCI1)L/B6#0ZL2<?J]P<"A#G>B4^BQ-+.9<K!?^+
M4\L54Y[FRF_\9 6_![H74$L#!!0    (  UJH5II+VF;[@   "L"   1
M9&]C4')O<',O8V]R92YX;6S-DL%* S$0AE]%<M^=S19;"-M<%$\*@@7%6TBF
M;7"3#<G(;M_>;&RWB#Z D$MF_GSS#:330>@AXG,< D:RF&XFU_LD=-BR(U$0
M $D?T:E4YX3/S?T0G:)\C0<(2G^H T+;-&MP2,HH4C #J[ 0F>R,%CJBHB&>
M\48O^/ 9^P(S&K!'AYX2\)H#D_/$<)KZ#JZ &4887?HNH%F(I?HGMG2 G9-3
MLDMJ',=Z7)5<WH'#V]/C2UFWLCZ1\AKSJV0%G0)NV67RZ^KN?O? 9-NTMU63
M#]_QC>!KT6[>9]<??E=A-QB[M__8^"(H._CU+^074$L#!!0    (  UJH5J9
M7)PC$ 8  )PG   3    >&PO=&AE;64O=&AE;64Q+GAM;.U:6W/:.!1^[Z_0
M>&?V;0O&-H&VM!-S:7;;M)F$[4X?A1%8C6QY9)&$?[]'-A#+E@WMDDVZFSP$
M+.G[SD5'Y^@X>?/N+F+HAHB4\GA@V2_;UKNW+][@5S(D$4$P&:>O\, *I4Q>
MM5II ,,X?<D3$L/<@HL(2W@4R]9<X%L:+R/6ZK3;W5:$:6RA&$=D8'U>+&A
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
MNZH#/*(B?S]"+S(Q/-'_5"'N))O5DK;0;W3&0MYWH)(U5Q_<&?S\D]_V?D.
MKPK@*TQ]L$OB!7GE2Z&-8H#^S!)>A8D+C:8!F8U'#\\OCR]?)N. C%Y>IY<(
M8;,@;*+"AY1>D-DVJP3#X[N-KPA%JZ!HG4DQY4I(6WT1@1JN!,*EBIJK*[IV
MP=8^:PPG:2A5)E5>=1<D,(!'I"(CN4Z-VL(QJL3%U>_&"&*G0.R<A7@O8DZ>
MU\F<JRH27,1K0-%WNPA.M\#IGH4S8Y]D$L&PBH4(=Y/U-!PNZ34;M'M%6]XU
MPG==\%V?Q3>,(ICRNFB0W$E>TLIAQ"5]WR<!+'0K\B95R+7A"BI$@1,CO+Y7
M&K/W8\0CZ\U0?#.YJ?9E7.]9*O-_0_\6[6C-\'\,K9@84R4_1!I69K-&]&F(
ML97+A8^:^_=L4ZD-B\E?(CLY76LD/=IIMS&X<FGP:RS=#N$0OIY.H^ "+0^;
MK'ZY OBXA3_*$'(R7<D4,X\:$4IIPVO[38RH7 U\W,/?E#"&IY"8)%FG>^_0
ME52XT(+%FF-(Y2+@XSX=R%B$PHAT29Z@OI5@<24/KE++4SJ^C[OU5/%&".GA
M,,'R3Z(93R,PG9?%XL3XX7JU9*7Y^[A5?T<VT7H-9+6 N&PM8.G^_GGV/TZX
M6MH!_0(2X-Q0;1E+MY5LN&(=&RV-GN+&/!,&EG"Y(#[]9?XK"7BXAKE0R52C
M9.<.++B!D>$[AE8:/<4]>:989+,5;).YK"S^&@'XAGW 2(YV ;@''[)"QI_A
MBJ5+?O*CND;H>1C<#7_'F$HWI[@9#Z'4H[S<[V.VK&3!!6IKJ/1SBEOQH;Y'
M0*/ V2<P[S[)5UY=1;B6!W]=O]GN5*YY[M%>T^[;GYB=4)K$? %JWF4'W%GM
MML*[$R.S?/LYEP8VLWESQ1G8@NT ]Q=2FL.)W=$6/T@,_@-02P,$%     @
M#6JA6I^@&_"Q @  X@P   T   !X;"]S='EL97,N>&ULW5=M:]LP$/XK0C]@
M;F)JXI$8MD!AL(U"\V%?E5AV!'KQ9+ES^NNGLVPG:75EW8>QS:')W3VZNT=W
M)YFN6W>2_.'(N2.]DKK=T*-SS?LD:0]'KEC[SC1<>Z0R5C'G55LG;6,Y*UMP
M4C)9WMQDB6)"TV*M.W6G7$L.IM-N0V]H4JPKH\^6E :#7\H4)X],;NB62;&W
M8EC+E)"G8%Z"X6"DL<1Y*GQ#%V!IGP*\"!JP'.,HH8T%8Q(RA._]N/P9,&FM
M5X64,\$E#89BW3#GN-5W7AD6#\87$!GEW:GQ#&O+3HOE+3T[##\^R=[8DMLY
MS8).IF(M>05TK*B/\.M,DP#HG%%>* 6KC68#A\EC%'S8 Y?R 5KXK;J*W5<D
M].)3"6T@L-5)](1&,80)"L2_C!9B7X2]_:VPI!&/QGWL_&[TH'_OC./WEE>B
M'_2^FO-CT1=X=-8T\O1!BEHK'O;^RPF+-9O\R-%8\>2SP:0<O(%;2AZY=>)P
M:?EA6;/CO9NFJ:]PSLM_D/.?K7/--;=,7I+VH_\W5_DMC)/Q]%P<T:L#.EL)
M7(0;^A7N5WGF0/:=D$[H43N*LN3ZQ3GUX1W;^PO\*KY?7_**==+M9G!#S_(7
M7HI.Y?.J>ZC+N.HL?X;[:)'-M[#/)73)>UYN1]76^T$D7O!9QP<<GB-WPQ-'
M,)^ Q1' L#P8 \PG>&%Y_J?]K-#]! SCMHHB*]1GA?H$KQBR'3Y8GKA/[I_X
M3O,\3;,,J^AV&V6PQ>J69? 7CX9Q P\L#V1Z6ZWQ;N,3\OH<8#U];4*PG>*3
MB.T4KS4@\;J!1Y['NXWE 0^L"]CL0/YX'IBIN$^:0E<Q;M@)QI$\QQ"8Q?B,
M9AE2G0P^\?Y@IR1-\SR. !9GD*88 J<11S &P %#TG1X#SY['R73>RHY_U=3
M_ 102P,$%     @ #6JA6I>*NQS     $P(   L   !?<F5L<R\N<F5L<YV2
MN6[#, Q ?\70GC 'T"&(,V7Q%@3Y 5:B#]@2!8I%G;^OVJ5QD L9>3T\$MP>
M:4#M.*2VBZD8_1!2:5K5N %(MB6/:<Z10J[4+!XUA]) 1-MC0[!:+#Y +AEF
MM[UD%J=SI%>(7->=I3W;+T]!;X"O.DQQ0FE(2S,.\,W2?S+W\PPU1>5*(Y5;
M&GC3Y?YVX$G1H2)8%II%R=.B':5_'<?VD-/IKV,BM'I;Z/EQ:%0*CMQC)8QQ
M8K3^-8+)#^Q^ %!+ P04    "  -:J%:.JJBYT !   \ @  #P   'AL+W=O
M<FMB;V]K+GAM;(U176O#, S\*\8_8$G+5EAI!F/=1V%L91U]=V*E$;6M8*OM
MUE\_)2&LL)<]R3J)T]UY<:*X+XGVZLN[D K=,+?S+$M5 ]ZD*VHAR*2FZ U+
M&W=9:B,8FQH ]BZ;YODL\P:#OEN,7.N873;$4#%2$+ #M@BG]#OO6G7$A"4Z
MY.]"]V\'6GD,Z/$,MM"Y5JFATPM%/%-@XS95).<*/1D&6XB,U1]XTXG\-&7J
M$3;EAQ$AA9[E0EAC3-QO]/Q&-!Y!EH?NP/2$CB$N#<-SI$.+8=?1B(OLPD:?
MPUB'$.?Q/S%276,%2ZH.'@(/.49PG<"0&FR35L%X*/2XHNZ#58^!)22U"@.5
M['9.Y?3*#JY9Y%YD&.<H@[BR@_!1K84: ]@W.9 $E^2J=51=Z7FFUS>36TGH
MX-R#8._AE8P=S8\?=_<#4$L#!!0    (  UJH5HD'INBK0   /@!   :
M>&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'.UD3T.@S ,A:\2Y0 U4*E#!4Q=
M6"LN$ 7S(Q(2Q:X*MR^% 9 Z=&&RGBU_[\E.GV@4=VZ@MO,D1FL&RF3+[.\
MI%NTBB[.XS!/:A>LXEF&!KS2O6H0DBBZ0=@S9)[NF:*<//Y#='7=:7PX_;(X
M\ \PO%WHJ45D*4H5&N1,PFBV-L%2XLM,EJ*H,AF**I9P6B#BR2!M:59]L$].
MM.=Y%S?W1:[-XPFNWPQP>'3^ 5!+ P04    "  -:J%:99!YDAD!  #/ P
M$P   %M#;VYT96YT7U1Y<&5S72YX;6RMDTU.PS 0A:\295LE+BQ8H*8;8 M=
M< %C3QJK_I-G6M+;,T[:2J 2%85-K'C>O,^>EZS>CQ&PZ)WUV)0=47P4 E4'
M3F(=(GBNM"$Y2?R:MB)*M9-;$/?+Y8-0P1-XJBA[E.O5,[1R;ZEXZ7D;3?!-
MF<!B63R-PLQJ2AFC-4H2U\7!ZQ^4ZD2HN7/08&<B+EA0BJN$7/D=<.I[.T!*
M1D.QD8E>I6.5Z*U .EK >MKBRAE#VQH%.JB]XY8:8P*IL0,@9^O1=#%-)IXP
MC,^[V?S!9@K(RDT*$3FQ!'_'G2/)W55D(TADIJ]X(;+U[/M!3EN#OI'-X_T,
M:3?D@6)8YL_X>\87_QO.\1'"[K\_L;S63AI_YHOA/UY_ 5!+ 0(4 Q0    (
M  UJH5I&QTU(E0   ,T    0              "  0    !D;V-0<F]P<R]A
M<' N>&UL4$L! A0#%     @ #6JA6FDO:9ON    *P(  !$
M ( !PP   &1O8U!R;W!S+V-O<F4N>&UL4$L! A0#%     @ #6JA6IE<G",0
M!@  G"<  !,              ( !X $  'AL+W1H96UE+W1H96UE,2YX;6Q0
M2P$"% ,4    "  -:J%:!!)H>T<$  "<$   &               @($A"
M>&PO=V]R:W-H965T<R]S:&5E=#$N>&UL4$L! A0#%     @ #6JA6I^@&_"Q
M @  X@P   T              ( !G@P  'AL+W-T>6QE<RYX;6Q02P$"% ,4
M    "  -:J%:EXJ[',     3 @  "P              @ %Z#P  7W)E;',O
M+G)E;'-02P$"% ,4    "  -:J%:.JJBYT !   \ @  #P
M@ %C$   >&PO=V]R:V)O;VLN>&UL4$L! A0#%     @ #6JA6B0>FZ*M
M^ $  !H              ( !T!$  'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR
M96QS4$L! A0#%     @ #6JA6F60>9(9 0  SP,  !,              ( !
MM1(  %M#;VYT96YT7U1Y<&5S72YX;6Q02P4&      D "0 ^ @  _Q,

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>9
<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>10
<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>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.25.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>1</ContextCount>
  <ElementCount>22</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>0</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>0</UnitCount>
  <MyReports>
    <Report instance="cpsh20250501_8k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>000 - Document - Document And Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cpsh.com/20250429/role/statement-document-and-entity-information</Role>
      <ShortName>Document And Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File>cpsh-20250429.xsd</File>
    <File>cpsh-20250429_def.xml</File>
    <File>cpsh-20250429_lab.xml</File>
    <File>cpsh-20250429_pre.xml</File>
    <File doctype="8-K" isOnlyDei="true" original="cpsh20250501_8k.htm">cpsh20250501_8k.htm</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="22">http://xbrl.sec.gov/dei/2024</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>false</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>14
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "cpsh20250501_8k.htm": {
   "nsprefix": "cpsh",
   "nsuri": "http://www.cpsh.com/20250429",
   "dts": {
    "schema": {
     "local": [
      "cpsh-20250429.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd",
      "https://xbrl.sec.gov/country/2024/country-2024.xsd",
      "https://xbrl.sec.gov/currency/2024/currency-2024.xsd",
      "https://xbrl.sec.gov/cyd/2024/cyd-2024.xsd",
      "https://xbrl.sec.gov/cyd/2024/cyd-8k-sub-2024.xsd",
      "https://xbrl.sec.gov/cyd/2024/cyd-cr-2024.xsd",
      "https://xbrl.sec.gov/dei/2024/dei-2024.xsd",
      "https://xbrl.sec.gov/exch/2024/exch-2024.xsd",
      "https://xbrl.sec.gov/sic/2024/sic-2024.xsd",
      "https://xbrl.sec.gov/stpr/2024/stpr-2024.xsd"
     ]
    },
    "definitionLink": {
     "local": [
      "cpsh-20250429_def.xml"
     ]
    },
    "labelLink": {
     "local": [
      "cpsh-20250429_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "cpsh-20250429_pre.xml"
     ]
    },
    "inline": {
     "local": [
      "cpsh20250501_8k.htm"
     ]
    }
   },
   "keyStandard": 22,
   "keyCustom": 0,
   "axisStandard": 0,
   "axisCustom": 0,
   "memberStandard": 0,
   "memberCustom": 0,
   "hidden": {
    "total": 2,
    "http://xbrl.sec.gov/dei/2024": 2
   },
   "contextCount": 1,
   "entityCount": 1,
   "segmentCount": 0,
   "elementCount": 36,
   "unitCount": 0,
   "baseTaxonomies": {
    "http://xbrl.sec.gov/dei/2024": 22
   },
   "report": {
    "R1": {
     "role": "http://www.cpsh.com/20250429/role/statement-document-and-entity-information",
     "longName": "000 - Document - Document And Entity Information",
     "shortName": "Document And Entity Information",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "d20258K",
      "name": "dei:EntityRegistrantName",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "b",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cpsh20250501_8k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d20258K",
      "name": "dei:EntityRegistrantName",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "b",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cpsh20250501_8k.htm",
      "first": true,
      "unique": true
     }
    }
   },
   "tag": {
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amendment Flag",
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission."
       }
      }
     },
     "auth_ref": []
    },
    "dei_CityAreaCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "CityAreaCode",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "City Area Code",
        "documentation": "Area code of city"
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentInformationLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentInformationLineItems",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Information [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentInformationTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentInformationTable",
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Information [Table]",
        "documentation": "Container to support the formal attachment of each official or unofficial, public or private document as part of a submission package."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentPeriodEndDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentPeriodEndDate",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document, Period End Date",
        "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentType",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document, Type",
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressAddressLine1": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressAddressLine1",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity, Address, Address Line One",
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressCityOrTown": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressCityOrTown",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity, Address, City or Town",
        "documentation": "Name of the City or Town"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressPostalZipCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressPostalZipCode",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity, Address, Postal Zip Code",
        "documentation": "Code for the postal or zip code"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressStateOrProvince": {
     "xbrltype": "stateOrProvinceItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressStateOrProvince",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity, Address, State or Province",
        "documentation": "Name of the state or province."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity, Central Index Key",
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "dei_EntityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityDomain",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity [Domain]",
        "documentation": "All the names of the entities being reported upon in a document. Any legal structure used to conduct activities or to hold assets. Some examples of such structures are corporations, partnerships, limited liability companies, grantor trusts, and other trusts. This item does not include business and geographical segments which are included in the geographical or business segments domains."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityEmergingGrowthCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityEmergingGrowthCompany",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity, Emerging Growth Company",
        "documentation": "Indicate if registrant meets the emerging growth company criteria."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "dei_EntityFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityFileNumber",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity, File Number",
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityIncorporationStateCountryCode": {
     "xbrltype": "edgarStateCountryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityIncorporationStateCountryCode",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity, Incorporation, State or Country Code",
        "documentation": "Two-character EDGAR code representing the state or country of incorporation."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity, Registrant Name",
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityTaxIdentificationNumber",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity, Tax Identification Number",
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "dei_LegalEntityAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "LegalEntityAxis",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Legal Entity [Axis]",
        "documentation": "The set of legal entities associated with a report."
       }
      }
     },
     "auth_ref": []
    },
    "dei_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "LocalPhoneNumber",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Local Phone Number",
        "documentation": "Local phone number for entity."
       }
      }
     },
     "auth_ref": []
    },
    "cyd_MaterialCybersecurityIncidentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/cyd/2024",
     "localname": "MaterialCybersecurityIncidentAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Material Cybersecurity Incident [Abstract]"
       }
      }
     },
     "auth_ref": [
      "r6",
      "r7"
     ]
    },
    "cyd_MaterialCybersecurityIncidentAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/cyd/2024",
     "localname": "MaterialCybersecurityIncidentAxis",
     "presentation": [
      "http://xbrl.sec.gov/cyd/role/MaterialCybersecurityIncidentDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Material Cybersecurity Incident [Axis]"
       }
      }
     },
     "auth_ref": [
      "r6",
      "r7"
     ]
    },
    "cyd_MaterialCybersecurityIncidentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/cyd/2024",
     "localname": "MaterialCybersecurityIncidentDomain",
     "presentation": [
      "http://xbrl.sec.gov/cyd/role/MaterialCybersecurityIncidentDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Material Cybersecurity Incident [Domain]"
       }
      }
     },
     "auth_ref": [
      "r6",
      "r7"
     ]
    },
    "cyd_MaterialCybersecurityIncidentInformationNotAvailableOrUndeterminedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/cyd/2024",
     "localname": "MaterialCybersecurityIncidentInformationNotAvailableOrUndeterminedTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/cyd/role/MaterialCybersecurityIncidentDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Material Cybersecurity Incident Information Not Available or Undetermined [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r6",
      "r8"
     ]
    },
    "cyd_MaterialCybersecurityIncidentLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/cyd/2024",
     "localname": "MaterialCybersecurityIncidentLineItems",
     "presentation": [
      "http://xbrl.sec.gov/cyd/role/MaterialCybersecurityIncidentDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Material Cybersecurity Incident [Line Items]"
       }
      }
     },
     "auth_ref": [
      "r6",
      "r9"
     ]
    },
    "cyd_MaterialCybersecurityIncidentMaterialImpactOrReasonablyLikelyMaterialImpactTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/cyd/2024",
     "localname": "MaterialCybersecurityIncidentMaterialImpactOrReasonablyLikelyMaterialImpactTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/cyd/role/MaterialCybersecurityIncidentDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Material Cybersecurity Incident Material Impact or Reasonably Likely Material Impact [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r6",
      "r9"
     ]
    },
    "cyd_MaterialCybersecurityIncidentNatureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/cyd/2024",
     "localname": "MaterialCybersecurityIncidentNatureTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/cyd/role/MaterialCybersecurityIncidentDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Material Cybersecurity Incident Nature [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r6",
      "r9"
     ]
    },
    "cyd_MaterialCybersecurityIncidentScopeTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/cyd/2024",
     "localname": "MaterialCybersecurityIncidentScopeTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/cyd/role/MaterialCybersecurityIncidentDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Material Cybersecurity Incident Scope [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r6",
      "r9"
     ]
    },
    "cyd_MaterialCybersecurityIncidentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/cyd/2024",
     "localname": "MaterialCybersecurityIncidentTable",
     "presentation": [
      "http://xbrl.sec.gov/cyd/role/MaterialCybersecurityIncidentDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Material Cybersecurity Incident [Table]"
       }
      }
     },
     "auth_ref": [
      "r6",
      "r7"
     ]
    },
    "cyd_MaterialCybersecurityIncidentTimingTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/cyd/2024",
     "localname": "MaterialCybersecurityIncidentTimingTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/cyd/role/MaterialCybersecurityIncidentDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Material Cybersecurity Incident Timing [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r6",
      "r9"
     ]
    },
    "dei_PreCommencementIssuerTenderOffer": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "PreCommencementIssuerTenderOffer",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pre-commencement Issuer Tender Offer",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "dei_PreCommencementTenderOffer": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "PreCommencementTenderOffer",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pre-commencement Tender Offer",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r5"
     ]
    },
    "dei_Security12bTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "Security12bTitle",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of 12(b) Security",
        "documentation": "Title of a 12(b) registered security."
       }
      }
     },
     "auth_ref": [
      "r0"
     ]
    },
    "dei_SecurityExchangeName": {
     "xbrltype": "edgarExchangeCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "SecurityExchangeName",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Security Exchange Name",
        "documentation": "Name of the Exchange on which a security is registered."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "dei_SolicitingMaterial": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "SolicitingMaterial",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Soliciting Material",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as soliciting material pursuant to Rule 14a-12 under the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "dei_TradingSymbol": {
     "xbrltype": "tradingSymbolItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "TradingSymbol",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Symbol",
        "documentation": "Trading symbol of an instrument as listed on an exchange."
       }
      }
     },
     "auth_ref": []
    },
    "dei_WrittenCommunications": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "WrittenCommunications",
     "presentation": [
      "http://www.cpsh.com/20250429/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Written Communications",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as written communications pursuant to Rule 425 under the Securities Act."
       }
      }
     },
     "auth_ref": [
      "r10"
     ]
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r1": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r2": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r3": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "13e",
   "Subsection": "4c"
  },
  "r4": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "14a",
   "Subsection": "12"
  },
  "r5": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "14d",
   "Subsection": "2b"
  },
  "r6": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 6-K",
   "Section": "General Instruction",
   "Subsection": "B"
  },
  "r7": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 8-K",
   "Section": "1.05"
  },
  "r8": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 8-K",
   "Section": "1.05",
   "Subsection": "Instruction",
   "Paragraph": "2"
  },
  "r9": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 8-K",
   "Section": "1.05",
   "Subsection": "a"
  },
  "r10": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "425"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>15
<FILENAME>0001437749-25-014039-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001437749-25-014039-xbrl.zip
M4$L#!!0    (  UJH5I*9$'0?@,  !@.   1    8W!S:"TR,#(U,#0R.2YX
M<V3-5TMOVS@0OB^P_X'5G:;DU(NU$:<HFFYA('V@28&]%;1(VT0E4DM23?SO
M.T,]+"5R(OM0[,D4Y_OFQ>%P?/GF(<_(3VF=,GH9)9,X(E*G1BB]74;?;NG;
MVW>K542<YUKPS&BYC+2)WES]^<?E*TH_2"TM]U*0]9[<[4HMI+TVN21?C/4\
M(Y3,6,*F\71&9HMDMI@FY,M'2I']X,3"I3N9<P(N:+=X6-M,+:.=]\6"L?O[
M^PGN3(S=@H+X@BF-3J0R:O!.]-#W%PTV8?]^O+D-NEMPIO2/(7@RG\]9D#90
MYPO;(H,+3J:3K?G)4(+!O&Z@3Y3V/4;QFKO68^$M]?M"NF$.B!F*T41,XX1.
MDZB3&^'[7M5F9JP2MD:D&O8>!#WG4U-J;_?#X%K8(SB5'LF+2ON:2VNAB(ZI
MKJ4]BGQ(=\-PE/2U[\41Q7O1!Q9NU\LT;DQ2DX>"C%]/YQ'AWENU+KW\Q]C\
M6FYXF4&:2_U?R3.U45+ =<AD+K7O 3IBS^U6^D\\EZ[@J7S!8%/Y*B_@AA ]
M2#M6]]5UN3$I]^&V'J7@%VUX%+=H,J47R01,1^QD'^;,FDPR+;=XU<?YD5G;
M8Z$7<_0B^6ND%\>NWI!U=Q0?5A17YP0_>"6/.? 2,WR[4Z)_<L5'5D!#P*3/
MSDGWH5>,RG8#Q\4IN7ZFY8RRVZ4T'V?;/W2Q<156PW%Q?LS]7C@NZ"ZG_3K;
MA4Y_'66^Q8?5^9'O!?W[!W7E^J38ZQ;?H?<]J'W@6AL?%#5>\:)0>F/P$Y_E
M1?,V?Y4;$I[_!;<I-JSGAP166%-(ZY5TW><]*-A9N5E&V/-IT^^_9WP]@=>H
M@3PQT._;H6$"168W!_<:+G:/9>0@O9FLLOT[ Q%R<VH@0%%:X2'\[Z(IK#PU
M&J X& /X:?$@]0Y$1,'0 N^Q#[,$%28MPP*F:@J_RN\IEJ?-@_Z((._;U]7S
MTT3EV'BMK5>'DZE&I3$S[%4<QS#/7]<VNLNW6I#WP1Q9'<Q=LD>V6O.ED^*S
MO@KKE&=IF;59K4DU8HC0KZJ7\8_/[0F#]0XJ[#QJ&&RXI=2#(>%KYRU/82ST
MMH2RPZ/&L_K>) CR4Z5GU3UB;)#+Z 6,RJ =8'%6JJ'?.0"5*/U@35DLH_"W
M::&@!& 6#458[8!/\!]N!?L8%I1IV(5+HHRX"SA1VLH,:X.LFC!\_@)02P,$
M%     @ #6JA6KT1@_+8!   Y"P  !4   !C<'-H+3(P,C4P-#(Y7V1E9BYX
M;6S-6EV/XC84?:_4_Y"FSR&$&=J"EETA9G:%=F8'#:Q:]:4RR06L=6SDF '^
M?>WP,<P2.X;!*"\0XN/K<ZX_<G/$AT^KE'@OP#/,:,>/:G7? QJS!--IQ_\^
M#+K#7K_O>YE -$&$4>CXE/F?/O[ZRX??@N +4.!(0.*-U]YHMJ )\#N6@C=@
M7"#B!5XSC,)&O='TFNVHV6Y$WN Q"%1O@NF/MOH8HPP\R8)F^<^./Q-BW@[#
MY7)96XTYJ3$^E2'J-^$.[6_AJC41^PZ'X&:X:=Q#CT(O;W)LU&JUPKQU#\UP
M$5 &C<)_'A^&\0Q2%&"J4A(K+AEN9_G-!Q8CD>>Q5(*G1:A?P0X6J%M!U AN
MHMHJ2_Q]XA"/.2/P#!-O>_G]N7^<"4Q%F. TW&)"1(@DG$>8<9AHB>[2I\9O
MJI%_/^@IUG.Y"C*<S@GXX7LI)2Q%F 8II&/@9Y(KC'%AFC@%JC9)L!GL7*::
M,)<E.Y/1>+P80[ ?[TR^ADC.\@L3M"#B_0E^&T=#=\?U9Z)JI'B>S6HQ2_,#
MK'[;:(4Y5;GQ!<A1A)S#>)%?R,,QD-]8K.7!,&$\S<^!MQ)4M& 7*>=Z<B"-
M!JD44ZR #_+G%JNH.E&S(0$K ?*T/SB2"(N/IBS;37D&<6W*7L($L!K_5EVH
M9-QN)@WP?_?Y@'=O=@5!8R =7]>\84+4J<OX03ZNQZ1XD5V<T=UV9OJOLS%"
M8P(%[,J@UV,HUR+TY=+*[%@>P1TQ?8 I(ILY[*YP$3D-PG'F1C*\(5.'S8Z9
M#(!CEMS3Y$Z># 9*A3BG>_(9IC@3'%'Q#:5%U$PPI\SZLF;F<\;SI3Q41VJ/
M+:C@ZQY+]$2M>CGE_1D3^+8X+)N.2!Y#G#(:H54_44^?"=Y4TR7T2O!.N7:3
MA$.6;;_4"19I>1JPU^#8DY=/?,26^D>:%GD-?OGJ?^(#SE[PYK7*2%(#OP;3
M 9,E$_D7SXU;VP1VQ%)-7)<#TO J:G;UC)4!R6#&J/YLT4$<,?J;8R$+UAY+
MTP7='A1%SWXCSA&W(2,XEN4[G3[*1<TQ(@7$]"!'K 8<5!9 [JZ\_E#5/G^:
M3 IGLQQ\'9;]+%L /XFKMHO3L^0^!3Z5D_F%LZ6823YS1-?:P\2(=K4J(5[(
MS;".&N,1%H7O&CJ((T8CCI0M.5RG8U:T10K;'6?G?A7/$)V"IAXUP1PQZ\I%
MG:B%_9F@:0&EPG:G:[TG!^.(].4.6WT%_2K7X'3<7EV/+H\]QN7^[?AUV2MW
MA-HQ81DD'5_PQ3[E6[/I?+=OPEEJ?DED97:%'*),1'1Q$6]=BK-4%%L=.S77
MF!2#%_FJJ-3_8!8O^:^JSM.UO<FH@)6X)_ESIN-G,%47)^L^L-Z-.H\=%':*
M)W3%A5EDU[]/VK$]8B&G45DY!FO%0M=-Y725^S(6LFXK*NL$%\="9;.B*G4V
MD(6D/RHJR<HZLM#W9T7UE5I.%MK^JK8VG5EEH:Q5;65&A\OF67VI4MB1/H,S
M9J.N>J6(WE^ST5.]6L3LT-EHJEX=8F'OV0BK7B529@_:J*I>Y6%K*]JHJUX1
M<IH1::.QJH6(A7]I(Z]ZM8C9 ;715+TJQ&"CVKQ35Z_L*#=A;715K^ P.+DV
M@JI7<5C8P =^8_B3-AGVQ\?]??6A_D$K[_P/4$L#!!0    (  UJH5J>PFEG
M]@4  $(\   5    8W!S:"TR,#(U,#0R.5]L86(N>&ULS5MA;^HV%/T^:?_!
M8U\VJ6E*NTYJU?:IZNM[0H^VJ%!MVM,TA<2 M<07.:; OY_M "5@AP2PLR\M
MD)MS+N<<XNN&WGR:)3%ZQRPE0&\;S=.S!L(TA(C0X6WCK>O==Q]:K09*>4"C
M( :*;QL4&I_N?OSAYB?/^XHI9@''$>K/46\TH1%FGR'!J .,!S'RT*7?],_/
MSB_1Y77S\OJ\B3I/GB?/C@G]]UK^Z <I1J(+FJJGMXT1Y^-KWY].IZ>S/HM/
M@0T%Q-F%OZQN+,KET8BO3E@OOO2S@ZO2+>CIA:IM7EU=^>KHJC0END(!VO3_
M?&IWPQ%. H]0*4DH>TG)=:I>;$,8<*7CSK> C!7RF;<L\^1+7O/<NVB>SM*H
ML1*.08Q?\0#)WV^O+2/CE2\K?(J'TJ5VT,>QZ%A!C!@>Z,^+&<N=)KNXDETT
M?Y==_*Q#X_.QB$9*DG&,&_Z!?78P(Q ]TB,WK(>UT'F7!XS;Z'T;^*C=]T!\
M:(_;]S;D<3L65RY\Y(ZW((_:\3,^<C(V 8_5[1YM\NT62_46RYJV>+0HDW %
M%U'%MKADK\'B&<=B 5J[2L80;K6?+E>*%(>G0WCW(TSD"O6;?.#)!ZIS\>2?
M1\H)GXOU+"!T2:5:O6V8#F>=Q'(A +;Y#HLAO'A=J5(2;$O+< H3%F9+I&"2
MJSBFWENW<9=QH>\9V]\W_D<S^3;OV5*U@(4[^EA4^"&(M7#,\^]AP" ID IV
M:9"])4&AA#R2J6WQJ8DSSOL9236^&BHJ6KN!8MM=18>6'DM&MPZ;1(,2:ECQ
M^3.$DP13WJ(#8(F:R\05!K<X3G2FERFOF( B2-MQ6'*C-7+T7=(CQ>\V'*7$
MA:JJN8I-+^C'N%QD<J6'QT7!U1,515U[2O)ZFA.B$<IJ.GH"O" 1ZX?W3(&$
M<.7\"9)LM7B=4PIV26#5T]7N\+.8J@O,U=;MZ7(.RYW=&:V8%B(DB6MQ7B\C
ME-;'2A:R">45#TG*64#Y<Y#HHE!4MM<.( _E9B=P@CY8D:2M84=@D!#*:F,Q
M!"T: AL#4^M+EXO\/<"$<C9_@,B<B5)G[1610F17B<DU<8)4&P@86K2"9"\U
MQ*B<ZK"GG!9#]H7$^'F2]#$S)FJ[9*_X?,"XRHID1!EE#9'0R 9E]+!H=B^8
MM2*QJ)$!R>X3['!^1_U>,3!@NLJ$H$=Y_OH2LDM>J*R;Q>S<1Y&0-UW\DAOB
MIC$W!;5[94:#YRHO"\[5 Z3^@O%"ZUADBF2%2GK9S\F#>/C">C U_]W:6'E(
M1C[0G"=$4LM11)+7EPZ-G+ILF'2RGPPUZKRP#H-WDMV^+C344'Y(1C8@G0=E
M-;0N.Z@O+29U=9$IE,U^;CJ0\B#^BXP+MS]%Q8=D)@?H/#$9.Q+T=6UP"G75
MI:5 ,"M9D1>T>X8#0SITAROF81W"=@+46B+)W/NM50IV26#G3JFP)NZ,@)JW
MJ*:2JO=*-V"LWRR5?$@1UK'_,*H&9>2PXO4?C'".Z0,DR80NMCBZVZ2%=15=
MUV+9MGY!BO*L3NTOUA!*BV,E"%V(24@XH<,G,6\P$L2:%)B+*D9@&\BV_Q^,
M:$GIU/P"Z:"<)E9L[S LHX9%[^K6F_PB%7L9#+17_=W%%6-@!K0=!\'LA6O4
M*.-&BMQI,$J("M74<A&45II.,*L4%^,IAX5F"]9Y=+(._C<),NNLS]$. 2UN
M,1\3S(;B>O>5P92/1$_C@,Z->\S"ZKTVF5I$5[O,)3G*V-&"OH9-9K&P4%$Q
M.],)#B=B,)HWS_L]PK7?RC*55)U,-F!LQT&1(!B@YODO_5_1DM[M;&*2#LIH
M8L7P'@ODOR)UYTD?=).H]GA%JW,8UGW.R%#&YM1>O5:P4P2KG^3'63@2^F##
M-VV*RO;\1*]#6=]M+#C1DM3]%VT*%82RTEC)P+T8.R(Y>GR)@Z'&?.WQBJ[G
M,&S;O2)#DLVIS7JM8*<(%L>Z!T'(@K@E!LK9-VP>Z QU>XUR&UBNAK@%+5*\
M2!#7,+Z99(32^FQE8>U-M,6CNX^72/;_J>*5_P!02P,$%     @ #6JA6KXR
M,+ET!   ?"T  !4   !C<'-H+3(P,C4P-#(Y7W!R92YX;6S=6EV/VC@4?:_4
M_Y!-GT,(,^PNJ+1"S+1"93IHH-K5OE0F,6#5B9%M!OCW>VT^EA%QXM'*2.,7
M\N$3^_CXVKDYYN/G;4Z#9\P%844O3!K-,,!%RC)2+'KACTG4GPR&PS 0$A49
MHJS O;!@X>=/[]]]_"V*ON("<R1Q%LQVP72Y+C+,[UB.@S'C$M$@"MIQ$K>:
MK7;0[B;M;BL)Q@]1I)ZFI/C553\S)'  + JA+WOA4LI5-XXWFTUC.^.TP?@"
MJFC>Q$=T>("KTDR>'C@'M^-]X0EZ4?7F1F.33J<3Z](35) R(%2:Q'\_C";I
M$N<H(H62)%5<!.D*?7/$4B2UCK5="(P(=14=89&Z%26MZ"9I;$46GH3CC.(G
M/ _4\<?3\$6+Z4HL&RG+M>[-VU8G5J@8^$J<XT)&&4O7^@3&-((CD3OHSYSQ
M7-.'+NDVEAS/>Z&J+3K6I$A\>'5%<K>"L!$D7U$<QJ<^K#@6\)"&CN#& :W(
M.NG/G@;>2@QA>J8E9>F+'JNFQ3&>!$X;"_8<9YBH]F_5B9+C5DL!%S_O=8,0
M]8B<FJ)HAFDO-!7OF5 5+HR?*?(_F8SP M%]>_TM$25D# A'?.X.XS+\;RRF
M:$9Q";$ZZ/480B3B(016F7PV<,=,IU!]!;/S8L=,QI@3EMT7V1W,PPI*I3A'
MW/:A_8071$B."OD=Y674JF!.F0WAU<I7C.O0F:@%;,#6A>2[ <O,1*V><LK[
M"Z'X^SJ?86XD>0EQRFB*ML-,K?5SLG_IUM"KP3OEVL\R>-6)PT&M&(F19P7V
M&AP'</K(IVQC?I49D=?@IZ/_D8\Y>R;[[*N2I %^#:9C!@D*_8>L*J=V%=@1
M2S5P?8Z1@5=9L:M\!2JDXR5\5!@GKPGBB-%?G$A(#P<LS]?%8:$H2P0J<8ZX
M31@E*9'P8?8 0<T)HB7$S"!'K,8<*Q7@FU'GXE.56_/'^;QT-.O!UV$Y%&*-
M^:NX&A]QNI;<YY@O8#"_<K:12^"S0L7.N)A4HEU%)4[7,!EV26LV);(TMS=!
M'#&:<J3<B\DNG[&R*5):[EB=^VVZ1,4"&_+1*I@C9GT(ZDP%]A>*%B642LN=
MQOH &N.(#F&&;;]A<Y0;<"9NYRY#GZ<!XS"#>V$S#* $YC''V6C?A-&2T7:#
MY@&-:5NIFU(F<-8+)5^?1@KQ],*[>%G1 1&O$%=V1;HD-#L^/><LK_Y(9W6&
M E2O._YVNUYK S +'\-2AN3MRV#O1QPU\2@P+GO*;+_NK=1X6_%A5,/L#%FI
MT/)+A0HSRDJ.&S_D>+6O9"7.K4_BF/PL*R7:/BEA99U9R?*[3[+4.G56DOSA
MH20F:]!*D#\]%*32AK12I>.A*A6FIUV"YDF^:G9<[63P)%&MMGKMI/ D6[6P
ME^WT\"1=K7.U[<3P)#VU-='M1/$D4WV=6V\GC5?9JL7>@)TJGB2LU9L2=E)X
MDJI6;(C8Z>!)<EJ_"V/GF'F2EE;L -GIX$E>:K'K=+;C$%]( A7_^G0J43_J
MG[UPYU]02P,$%     @ #6JA6GF!0JBI$0  ;)0  !,   !C<'-H,C R-3 U
M,#%?.&LN:'1M[5UKD^(VE_Z<^15:LLGT5&%C&W/OX2U"7X;,]&6;SB:U7[:$
M+4#O&)M8IAOVU^\YL@TVF)Z^04.'5)(&2Y:.'IVK="2._S4=.>2.^8)[[N>/
MNJI]),RU/)N[@\\?6]UVI_/Q7\T/Q\, JD%55WS.#8-@7"\4[N_OU?NBZOF#
M@EZKU0I3K),+*]5]UD]5G/9\1U8U-*U<@-*X(A;8?%XW72\LC*NZE%LB75,P
M2QUX=P59!.\89K)=OI:$8H&[(J"NQ>;UA9TU,JBK%_ZZ^-:UAFQ$X\I\&BC0
M=>J%F!3N.MQE?_UV\ZT0^-05?<\?T0#0A;;TDJ)5E:(^[Q2J?E\/*)8FNLP>
MS8_Z,Q2C/$?0<]W)*+L=._ +P6S,"E!)@5K,YU;\WD0H6+0 OT]%3[X5EZ2P
MGP0^&ZS%OE: \L6PUM73BXFA)0CQ/6<-(;($"=$434^@+(*QG\TV6)*B?&4^
MTDR#Q3TJYDS#A6<:>N4A-@MKQ"\ R$M(9L]!/ A#3\E)D"DGI5!.@@4K\Q^S
MLK(L ,%PXMK,M[T12[U]<W)^QF'@ Z%:WB@QQ8^;X&FFPO@!+3;CV1,&!6E.
M$\J TG$F.V!!JK+E3=S GV6W'!6F7O#7L(V/3*-7E[B,6VN8C%MI,B:^#RIV
M'1U1:>H5-K6&V=6Q)%55^,$J&O P3<+,7M/[S$Y7'(MA:O[P ?(!UBIIIE'+
M-8^'C-K-#S\=!SQP6!-KR,*2IO]O];L*5N&X$!9]^ EJ_8>BD'/F,I\&S":]
M&;D-&>\$&(]<>WY ':*04D&779!BW2S52P:YOB"* H9HQ )*D""%_3WA=Y]S
M;<\-F!LHMR W.6*%WS[G C8-"M(B%9K'A9#$XYYGSX@(9@ZP>!]J*H+_'ZL3
M71L'#2(?].F(.[,Z^?7OB1<T;OF("7+)[LF--Z)N^+!!QM1&^U@G&G>)INK<
M;1"8-^'Y=4(G@=< 4&Q^%_=D<S%V*#0*FI7E@ P^K2-!S(\^<]MF;O@9JER&
MNC<<RC2X04MJ(Q;5KSGB4A1/$(-Z:\1<&_X+SAPZR!$.,\JG=TJQ5LTU^]01
M[+B0:N^I[9^Z,&FS-G3@4Z<#,S3]RF;)?F#J-?BGJIOE2GFELP_R27)H8/09
MLC83\!TU:5U(Z0<"B#1U]:'T&I"!E)B]5+#+N:@8->/GG."CL<-@5L,>4JW*
M[\*;^.%7Z0/4HW%*RN-QS@N9'.7\*[?Q09\SGTCB6*:);W>^IL>^_#+2EMG^
M&,#Q[/E7T'I^< *"T$2Z%,U4C%K\YJ)L0:N]IFY<,N]VWD\AA0%,RX<8M@5,
MA20_%H!Q<?82_)L4C(]+(O&QL9 C*4;RZQWU.74#8 CP19S&B/H#[M:Q.-?\
M]6>]K#5^U,]2-X_I!0>H4(</W+H%L#,_W>]QK_G'9>?V](1T;UNWI]WC0J_Y
M)E1T3]M_W'1N.Z==TKH\(:=_M;^T+L]/2?OJXJ+3[7:N+M^,M#^I&()B"SPW
M3T[:Q-!*9NUMB'E#+CF[NKD@3].5)YXU054<VJ!819H:J,BJ\G59-SX&T;V6
ML[;T80)RP\:>CZ,-WO5PK\'T3^ -$GBDRRR,O8A>))Y/]-*1_8EX?1(,&19-
M?!YP(. 4O#;J#AAI60$6Z[6BN4M<L;_3@680$96L%Y"C^#NC8 :9" B[0\[T
M93&S/]4?)>EA3(U2'=1M:'$$E88VG<V@6>9F:8)K:8!/0[N<4 FZEFNVQCYW
MB%'+$VQ_53OLQMSL+P^ 2#['U;UA RYP"26XA)+DG.FY9ONZ2VY/VU\NK[Y=
MG:/I;E_=7*O/T>P;&"]O'IU.*:@2)#SD_G@HA K2'3,+W5*;0+C" T':0W M
MF?\)R'^_[!;0GL-(S_/!K_V<TR T9(X316[S[V),K?C[T^?JGMO!$#YJOT24
M* [K!W49 D8/?#X81D]R,OZ%,!FCT.9Q -[V3_C5CGN^8W[ +>I$4QUXXZB'
MBEK\1;X.U7=-BA*J$9=$,6P)V-CW[E"\TKHQ%+..:WD^:%^Y1MG%VNUPZ:7M
MV2FI,T";,X?>@XI]0,X0DT)@/QK+LEK;62R7H3KC#H,7>LQ/XE*$V%,!5J]6
M7Q&676:Q95ANZ;03A=J6Y*)5C$S " +D:M$H:;7'P01_I43NOF""NI=R@QZF
M!YZE3_X-CJ6P>>AZ>OVD7M\V:3PIWDD+LQ^""MBVO=&("]P/(RB ).2NEPSE
MS=BD<],EIZ.QX\V 2=(R0RX]=<V8LB3!\M!6NI]S1NZQPXWM\=.!2K_Y2N3L
MA6IKV;;/A(C^?.,NTY-JK91KZKI.NMXD&)(_/5R_@YY)-_ 9"Y;57/Z)BQ@I
M"MKP\<J_]>[=9/_E7/,2XB;/?5Y?3_85(F*DMKORKZ$FE[M$"XHJN>8%%8):
MPXE@02#^H28Q NK: TB=_^'C95^J"O;0J)17END?;PIW7^) WT4P8 @$,;9K
M\3%U")LR:Q+P.XR,0/LQL9>J'":5X*P^K+,_P-\PO"C(^.<0<#TKX-)-U=@#
MV4<EW?(979;V6JY9TE:B ^5IC7_S )GKH>>NAB"&EFL:AJ%H9=W<G'/]1I,
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
52P4&      4 !0!) 0  8B4

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<FILENAME>cpsh20250501_8k_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2024"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="cpsh-20250429.xsd" xlink:type="simple"/>
    <context id="d20258K">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000814676</identifier>
        </entity>
        <period>
            <startDate>2025-04-29</startDate>
            <endDate>2025-04-29</endDate>
        </period>
    </context>
    <dei:AmendmentFlag contextRef="d20258K" id="ixv-398">false</dei:AmendmentFlag>
    <dei:EntityCentralIndexKey contextRef="d20258K" id="ixv-399">0000814676</dei:EntityCentralIndexKey>
    <dei:DocumentType contextRef="d20258K" id="ixv-409">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate contextRef="d20258K" id="ixv-410">2025-04-29</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName contextRef="d20258K" id="ixv-411">CPS TECHNOLOGIES CORP.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode contextRef="d20258K" id="ixv-412">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber contextRef="d20258K" id="ixv-413">0-16088</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber contextRef="d20258K" id="ixv-414">04-2832509</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="d20258K" id="ixv-415">111 South Worcester Street</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="d20258K" id="ixv-416">Norton</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="d20258K" id="ixv-417">MA</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="d20258K" id="ixv-418">02766</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="d20258K" id="ixv-419">508</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="d20258K" id="ixv-420">222-0614</dei:LocalPhoneNumber>
    <dei:WrittenCommunications contextRef="d20258K" id="ixv-421">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial contextRef="d20258K" id="ixv-422">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer contextRef="d20258K" id="ixv-423">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer contextRef="d20258K" id="ixv-424">false</dei:PreCommencementIssuerTenderOffer>
    <dei:EntityEmergingGrowthCompany contextRef="d20258K" id="ixv-425">false</dei:EntityEmergingGrowthCompany>
    <dei:Security12bTitle contextRef="d20258K" id="ixv-426">Common Stock</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="d20258K" id="ixv-427">CPSH</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="d20258K" id="ixv-428">NASDAQ</dei:SecurityExchangeName>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
