<SEC-DOCUMENT>0000356037-25-000032.txt : 20250514
<SEC-HEADER>0000356037-25-000032.hdr.sgml : 20250514
<ACCEPTANCE-DATETIME>20250514085651
ACCESSION NUMBER:		0000356037-25-000032
CONFORMED SUBMISSION TYPE:	8-K
PUBLIC DOCUMENT COUNT:		15
CONFORMED PERIOD OF REPORT:	20250514
ITEM INFORMATION:		Results of Operations and Financial Condition
ITEM INFORMATION:		Financial Statements and Exhibits
FILED AS OF DATE:		20250514
DATE AS OF CHANGE:		20250514

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			CSP INC /MA/
		CENTRAL INDEX KEY:			0000356037
		STANDARD INDUSTRIAL CLASSIFICATION:	SERVICES-COMPUTER INTEGRATED SYSTEMS DESIGN [7373]
		ORGANIZATION NAME:           	06 Technology
		EIN:				042441294
		STATE OF INCORPORATION:			MA
		FISCAL YEAR END:			0930

	FILING VALUES:
		FORM TYPE:		8-K
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	000-10843
		FILM NUMBER:		25942955

	BUSINESS ADDRESS:	
		STREET 1:		175 CABOT STREET
		STREET 2:		SUITE 210
		CITY:			LOWELL
		STATE:			MA
		ZIP:			01854
		BUSINESS PHONE:		9789545038

	MAIL ADDRESS:	
		STREET 1:		175 CABOT STREET
		STREET 2:		SUITE 210
		CITY:			LOWELL
		STATE:			MA
		ZIP:			01854
</SEC-HEADER>
<DOCUMENT>
<TYPE>8-K
<SEQUENCE>1
<FILENAME>cspi-20250514x8k.htm
<DESCRIPTION>8-K
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<!-- iXBRL document created with: Toppan Merrill Bridge iXBRL 10.10.0.1 -->
<!-- Based on: iXBRL 1.1 -->
<!-- Created on: 5/14/2025 12:50:40 PM -->
<!-- iXBRL Library version: 1.0.9179.3415 -->
<!-- iXBRL Service Job ID: 38730b98-0d50-4e57-9661-1f4f899a040f -->
<html xmlns:dei="http://xbrl.sec.gov/dei/2024" xmlns="http://www.w3.org/1999/xhtml" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:cspi="http://www.cspi.com/20250514" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2022-02-16" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:xbrli="http://www.xbrl.org/2003/instance"><head><meta http-equiv="content-type" content="text/html"/><title>CSP Inc._May 14, 2025</title></head><body><div style="margin-top:30pt;"></div><div style="display:none;"><ix:header><ix:hidden><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" name="dei:EntityCentralIndexKey" id="Tc__t8QpAuL1kyz8spHmUFFMw_2_1">0000356037</ix:nonNumeric><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" name="dei:AmendmentFlag" id="Tc_2zktE7dy90CVIOOC-ZoIRQ_3_1">false</ix:nonNumeric></ix:hidden><ix:references><link:schemaRef xlink:href="cspi-20250514.xsd" xlink:type="simple"/></ix:references><ix:resources><xbrli:context id="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000356037</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2025-05-14</xbrli:startDate><xbrli:endDate>2025-05-14</xbrli:endDate></xbrli:period></xbrli:context></ix:resources></ix:header></div><div style="max-width:100%;padding-left:11.03%;padding-right:11.03%;position:relative;"><div style="clear:both;margin-left:-10.0pt;margin-right:-10.0pt;max-width:100%;position:relative;width:calc(100% + 20.0pt);"><div style="padding-left:10pt;padding-right:10pt;position:relative;width:100%;"><a id="_77dd6c34_921a_4e12_a2f8_e166ffcb12e6"></a><a id="Section_1"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;text-align:center;margin:0pt;"><b style="font-size:14pt;font-weight:bold;">UNITED STATES</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;text-align:center;margin:0pt;"><b style="font-size:14pt;font-weight:bold;">SECURITIES AND EXCHANGE COMMISSION</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;text-align:center;margin:0pt;"><span style="font-size:12pt;">Washington, DC 20549</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:18pt;line-height:1.43;text-align:center;margin:0pt;"><b style="font-weight:bold;">FORM </b><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" name="dei:DocumentType" id="Narr_ZwNAwsyrxUiJWcGt61NF6A"><b style="font-weight:bold;">8-K</b></ix:nonNumeric></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;text-align:center;margin:0pt;"><b style="font-weight:bold;">Current Report Pursuant to Section 13 or 15 (d) of the Securities Exchange Act of 1934</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;text-align:center;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;text-align:center;margin:0pt;">Date of Report (Date of earliest event reported): <ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" format="ixt:date-monthname-day-year-en" name="dei:DocumentPeriodEndDate" id="Narr_TrHni_8pYEmxv9I4xsp8DA">May 14, 2025</ix:nonNumeric></p><p style="font-family:'Times New Roman','Times','serif';font-size:18pt;line-height:1.43;text-align:center;margin:0pt;"><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" name="dei:EntityRegistrantName" id="Narr_TyGjX-IISka0yw2mjycFzg"><b style="font-weight:bold;">CSP Inc.</b></ix:nonNumeric></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;text-align:center;margin:0pt;">(Exact name of the registrant as specified in its charter)</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;line-height:1.43;text-align:center;margin:0pt;"><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" format="ixt-sec:stateprovnameen" name="dei:EntityIncorporationStateCountryCode" id="Narr_2iDOkO1ZvEeGae7iSdzz2w"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Massachusetts</b></ix:nonNumeric></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;text-align:center;margin:0pt;">(State or other jurisdiction of incorporation)</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 7pt 0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p><a id="_0d26f317_fbd9_4fcf_b0e6_237f1587121c"></a><a id="Tc_SCuV1eHquESBobWP_lAszg_2_0"></a><a id="Tc_EIgm00aQbE-iqw_ZBVx4-w_2_1"></a><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0.5pt;padding-right:0.5pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 3pt 0pt 3pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 3pt 0pt 3pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 3pt 0pt 3pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:2pt 0pt 2pt 0pt;"><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" name="dei:EntityFileNumber" id="Tc_IWf9lU7CVE60t8o8ufdlDw_1_0"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">000-10843</b></ix:nonNumeric></p></td><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 3pt 0pt 3pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:2pt 0pt 2pt 0pt;"><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" name="dei:EntityTaxIdentificationNumber" id="Tc_kmGUYG0cDkmk5yKjtg_sdg_1_1"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">04-2441294</b></ix:nonNumeric></p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 3pt 0pt 3pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:2pt 0pt 2pt 0pt;"><b style="font-weight:bold;">(Commission File Number)</b></p></td><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 3pt 0pt 3pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:2pt 0pt 2pt 0pt;"><b style="font-weight:bold;">(IRS Employer Identification No.)</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:3pt 0pt 7pt 0pt;"><span style="font-size:7pt;visibility:hidden;">&#8203;</span></p><a id="_ff38676d_df37_4980_8d64_4f9fbe6d53bf"></a><a id="Tc_GZZnFX7cUUCeJSbkZY4UqQ_1_0"></a><a id="Tc_Lx1Kz4rf8Uq478Zhhz67zg_2_0"></a><a id="Tc_Bkh_YUVvGEKRCdextaIDWQ_2_1"></a><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0.5pt;padding-right:0.5pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 3pt 0pt 3pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 3pt 0pt 3pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 3pt 0pt 3pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:2pt 0pt 2pt 0pt;"><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" name="dei:EntityAddressAddressLine1" id="Narr_8A6rXiZUckO4B2CwT4PkMw"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">175 Cabot Street</b></ix:nonNumeric><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;"> - </b><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" name="dei:EntityAddressAddressLine2" id="Narr_iK28H9gsq0KeC_pyIb4khw"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Suite 210</b></ix:nonNumeric><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">, </b><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" name="dei:EntityAddressCityOrTown" id="Narr_gmu_PNsH3UO--qxvSRVuxg"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Lowell</b></ix:nonNumeric><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">, </b><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" name="dei:EntityAddressStateOrProvince" id="Narr_aOEXEkkFkka0G3qJnKDXNg"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">MA</b></ix:nonNumeric></p></td><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 3pt 0pt 3pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:2pt 0pt 2pt 0pt;"><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" name="dei:EntityAddressPostalZipCode" id="Tc_ejp_Lt5H20CG9m2ly5IIHg_1_1"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">01854</b></ix:nonNumeric></p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 3pt 0pt 3pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:2pt 0pt 2pt 0pt;"><b style="font-weight:bold;">(Address of principal executive offices)</b></p></td><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt 3pt 0pt 3pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:2pt 0pt 2pt 0pt;"><b style="font-weight:bold;">(Zip Code)</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;text-align:center;margin:0pt;"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">(</b><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" name="dei:CityAreaCode" id="Narr_gu3Qlhj_VEKyqmTJFWrTrQ"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">978</b></ix:nonNumeric><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">) </b><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" name="dei:LocalPhoneNumber" id="Narr_RPRoxUMNIECuK7okswgC5w"><b style="font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">954-5038</b></ix:nonNumeric></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;text-align:center;margin:0pt;">(Registrant&#8217;s telephone number, including area code)</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;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:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt;"><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" format="ixt-sec:boolballotbox" name="dei:WrittenCommunications" id="Narr_7Q1QyBC-bEm8gRsJom2Bkg"><span style="font-family:'Segoe UI Symbol';">&#9744;</span></ix:nonNumeric><span style="white-space:pre-wrap;">  Written communications pursuant to Rule 425 under the Securities Act (17 CFR 230.425)</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt;"><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" format="ixt-sec:boolballotbox" name="dei:SolicitingMaterial" id="Narr_NYqCJGYW20-sv5wPdQMn_g"><span style="font-family:'Segoe UI Symbol';">&#9744;</span></ix:nonNumeric><span style="white-space:pre-wrap;">  Soliciting material pursuant to Rule 14a-12 under the Exchange Act (17 CFR 240.14a-12)</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt;"><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" format="ixt-sec:boolballotbox" name="dei:PreCommencementTenderOffer" id="Narr_lUYfB4rAsEehxJZltuId_A"><span style="font-family:'Segoe UI Symbol';">&#9744;</span></ix:nonNumeric><span style="white-space:pre-wrap;">  Pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act (17 CFR 240.14d-2(b))</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt;"><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" format="ixt-sec:boolballotbox" name="dei:PreCommencementIssuerTenderOffer" id="Narr_Q-sH-TV-GEGCnRieCXYwVg"><span style="font-family:'Segoe UI Symbol';">&#9744;</span></ix:nonNumeric><span style="white-space:pre-wrap;">  Pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act (17 CFR 240.13e-4(c))</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt 19pt 0pt 5pt;"><span style="font-size:9pt;margin-left:0pt;margin-right:0pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt 19pt 0pt 0pt;"><span style="color:#231f20;">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 Exchange Act of 1934 (&#167;240.12b-2 of this chapter).</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:5pt 0pt 5pt 0pt;"><span style="display:inline-block;text-indent:0pt;width:36pt;"></span><span style="display:inline-block;width:36pt;"></span><span style="display:inline-block;width:36pt;"></span><span style="display:inline-block;width:36pt;"></span><span style="display:inline-block;width:36pt;"></span><span style="display:inline-block;width:36pt;"></span><span style="display:inline-block;width:36pt;"></span><span style="display:inline-block;width:36pt;"></span><span style="display:inline-block;width:36pt;"></span><span style="white-space:pre-wrap;">        Emerging growth company </span><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" format="ixt-sec:boolballotbox" name="dei:EntityEmergingGrowthCompany" id="Narr_brzwQab0XUuQ4eTsanPU3Q"><span style="font-family:'Segoe UI Symbol';">&#9744;</span></ix:nonNumeric></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt;"><span style="color:#231f20;">If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act.</span><span style="display:inline-block;width:13.69pt;"></span><span style="display:inline-block;width:36pt;"></span><span style="display:inline-block;width:36pt;"></span><span style="display:inline-block;width:36pt;"></span><span style="display:inline-block;width:36pt;"></span><span style="display:inline-block;width:36pt;"></span><span style="display:inline-block;width:36pt;"></span><span style="display:inline-block;width:36pt;"></span><span style="display:inline-block;width:36pt;"></span><span style="display:inline-block;width:36pt;"></span><span style="display:inline-block;width:36pt;"></span><span style="color:#231f20;white-space:pre-wrap;">          </span><span style="color:#231f20;font-family:'Segoe UI Symbol';">&#9744;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt;"><span style="font-family:'Wingdings';font-size:8pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:17.4pt;text-align:center;margin:0pt;"><span style="font-family:'inherit';">Securities registered pursuant to Section 12(b) of the Act:</span></p><a id="_3903c8be_04bb_40a9_a135_9e3f78bd951f"></a><a id="Tc_BjBjOhjf9km6EtUiXCiAew_3_0"></a><a id="Tc_D__9YR-zlEmlJfVnAaM2Sg_3_1"></a><a id="Tc_2BpBc2L9ZkKqdd4D2MAhgw_3_2"></a><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:middle;width:39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"></div></div></td><td style="vertical-align:middle;width:21.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"></div></div></td><td style="vertical-align:middle;width:39.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"></div></div></td></tr><tr><td colspan="3" style="vertical-align:middle;width:100%;margin:0pt;padding:0pt;"/></tr><tr><td style="vertical-align:middle;width:39%;margin:0pt;padding:0pt;"/><td style="vertical-align:middle;width:21.01%;margin:0pt;padding:0pt;"/><td style="vertical-align:middle;width:39.97%;margin:0pt;padding:0pt;"/></tr><tr><td style="vertical-align:bottom;width:39%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:1.5pt 1.12pt 1.5pt 1.12pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'inherit';">Title of Each Class</span></p></td><td style="vertical-align:bottom;width:21.01%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:1.5pt 1.12pt 1.5pt 1.12pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'inherit';">Trading Symbol(s)</span></p></td><td style="vertical-align:bottom;width:39.97%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:1.5pt 1.12pt 1.5pt 1.12pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'inherit';">Name of each exchange on which registered</span></p></td></tr><tr><td style="vertical-align:bottom;width:39%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:1.5pt 1.12pt 1.5pt 1.12pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" name="dei:Security12bTitle" id="Tc_GLgOFecbF0KxevE5-e1dNw_4_0"><span style="font-family:'inherit';">Common Stock, par value $0.01 per share</span></ix:nonNumeric></p></td><td style="vertical-align:bottom;width:21.01%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:1.5pt 1.12pt 1.5pt 1.12pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" name="dei:TradingSymbol" id="Tc_4Z-0zhAtFUqH1eQhQVyEwg_4_1"><span style="font-family:'inherit';">CSPI</span></ix:nonNumeric></p></td><td style="vertical-align:bottom;width:39.97%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:1.5pt 1.12pt 1.5pt 1.12pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><ix:nonNumeric contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ" format="ixt-sec:exchnameen" name="dei:SecurityExchangeName" id="Tc_BU9c2PrSwUCWMRpCO6OzUg_4_2"><span style="font-family:'inherit';">Nasdaq Global Market</span></ix:nonNumeric></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:77.94%;border:0;margin:30pt 11.03% 30pt 11.03%;"></div><div style="max-width:100%;padding-left:11.03%;padding-right:11.03%;position:relative;"><div style="clear:both;margin-left:-10.0pt;margin-right:-10.0pt;max-width:100%;position:relative;width:calc(100% + 20.0pt);"><div style="padding-left:10pt;padding-right:10pt;position:relative;width:100%;"><a id="_2d80f9e3_8047_4a28_a07e_f40b5c6fe1c0"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt;"><b style="font-size:12pt;font-weight:bold;white-space:pre-wrap;">Item 2.02   Results of Operations and Financial Condition.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:12.0pt;margin:0pt;"><span style="font-size:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;background:#ffffff;margin:0pt;">On May 14, 2025 CSP Inc. (the &#8220;Company&#8221;) issued a press release announcing its financial results for the second quarter of fiscal year 2025, which ended on March 31, 2025. A copy of the press release relating to such announcement is attached hereto as Exhibit 99.1 and is incorporated herein by reference.</p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;background:#ffffff;margin:0pt;"><span style="margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;background:#ffffff;margin:0pt;">The information set forth in this Form 8-K, including the exhibits attached hereto, shall not be deemed &#8220;filed&#8221; for purposes of Section 18 of the Securities Exchange Act of 1934, as amended, or otherwise subject to the liability of that Section. The information in this Form 8-K shall not be deemed incorporated by reference into any filing under the Securities Act of 1933, as amended, or the Exchange Act regardless of any general incorporation language in such filing, except as shall be expressly set forth by specific reference in such filing.</p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;background:#ffffff;margin:0pt;"><span style="margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;background:#ffffff;margin:0pt;"><b style="font-weight:bold;white-space:pre-wrap;">Item 9.01   Financial Statements and Exhibits</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;background:#ffffff;margin:0pt;"><span style="font-weight:bold;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;background:#ffffff;margin:0pt;"><span style="display:inline-block;text-indent:0pt;width:36pt;"><b style="font-family:'Times New Roman','Times','serif';font-size:12pt;font-style:normal;font-weight:bold;">(d)</b></span><b style="font-weight:bold;">Exhibits</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;background:#ffffff;margin:0pt;"><span style="display:inline-block;text-indent:0pt;width:36pt;"></span><b style="font-weight:bold;">99.1</b><span style="display:inline-block;width:15pt;"></span><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="cspi-20250514xex99d1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Press Release Dated May 14, 2025 </span></a></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:12.0pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:77.94%;border:0;margin:30pt 11.03% 30pt 11.03%;"></div><div style="max-width:100%;padding-left:11.03%;padding-right:11.03%;position:relative;"><div style="clear:both;margin-left:-10.0pt;margin-right:-10.0pt;max-width:100%;position:relative;width:calc(100% + 20.0pt);"><div style="padding-left:10pt;padding-right:10pt;position:relative;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;text-align:center;margin:0pt;"><b style="font-weight:bold;">SIGNATURE</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="_21978763_100a_47b8_9539_6bb10edbc696"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;text-indent:36pt;margin:0pt;"><b style="font-size:12pt;font-weight:bold;">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 hereunto duly authorized.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt;"><span style="font-size:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt 0pt 0pt 54pt;"><b style="font-size:12pt;font-weight:bold;">CSP INC.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt;"><span style="font-size:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt 0pt 0pt 54pt;"><b style="font-size:12pt;font-weight:bold;">Date: May 14, 2025</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt 0pt 0pt 54pt;"><span style="font-size:12pt;font-weight:bold;margin-left:0pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt 0pt 0pt 54pt;"><b style="font-size:12pt;font-weight:bold;white-space:pre-wrap;">By:  </b><b style="font-size:12pt;font-weight:bold;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">/s/Gary W. Levine</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt 0pt 0pt 54pt;"><b style="font-size:12pt;font-weight:bold;">Gary W. Levine</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt 0pt 0pt 54pt;"><b style="font-size:12pt;font-weight:bold;">Chief Financial Officer</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:13.2pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div></div></div>
<div style="background-color:#000000;clear:both;height:2pt;margin-left:11.03%;margin-right:11.03%;margin-top:30pt;page-break-after:avoid;width:77.94%;border:0;"></div></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-99.1
<SEQUENCE>2
<FILENAME>cspi-20250514xex99d1.htm
<DESCRIPTION>EX-99.1
<TEXT>
<!--Enhanced HTML document created with Toppan Merrill Bridge  10.10.0.134--><!--Created on: 5/14/2025 12:50:38 PM (UTC)--><html><head><meta charset="UTF-8"><title></title></head><body><div style="margin-top:30pt;"></div><div style="max-width:100%;padding-left:8.09%;padding-right:8.82%;position:relative;"><div style="margin-top:8pt;min-height:35pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt;"><b style="font-weight:bold;">Exhibit 99.1</b></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:10pt;text-align:center;text-indent:0pt;margin:0pt 0pt 12pt 0pt;"><b style="font-size:12pt;font-weight:bold;">CSPi Reports Fiscal 2025 Second Quarter Results; AZT PROTECT New Business Pipeline Continues to Increase Globally</b></p><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:10pt;text-align:center;text-indent:0pt;margin:0pt 0pt 12pt 0pt;"><i style="font-size:12pt;font-style:italic;white-space:pre-wrap;">  Board Declares $0.03 per Share Quarterly Dividend</i></p><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:10pt;padding-bottom:12pt;text-align:justify;text-indent:0pt;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;font-weight:bold;background:#ffffff;">LOWELL, Mass., May 14, 2025</b><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;background:#ffffff;"> &#8211; </font><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;">CSP Inc. (NASDAQ: CSPI), an award-winning provider of security and packet capture products, managed IT and professional services and technology solutions, today announced results for the fiscal second quarter ended March 31, 2025. The Company also announced that the Board of Directors declared a quarterly dividend of $0.03 per share payable June 11, 2025, to shareholders of record at the close of business on May 28, 2025</font><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;background:#ffffff;">.</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;font-weight:bold;">Recent Achievements and Operating Highlights</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;font-weight:bold;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10.5pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;font-style:normal;font-weight:normal;">Continued AZT PROTECT&#8482; marketplace momentum results in additional new customers during the fiscal second quarter including a South African cell tower provider.</font></td></tr></table><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10.5pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;font-style:normal;font-weight:normal;">Global pharmaceutical company renewed twelve months&#8217; customer support for AZT PROTECT in a six-figure contract.</font></td></tr></table><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10.5pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;font-style:normal;font-weight:normal;">Strengthened reseller relationships with Rockwell Automation and others led to greater market exposure via webinars and regional events and an expanded pipeline.</font></td></tr></table><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10.5pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;font-style:normal;font-weight:normal;">In April, we signed multi-year contracts with a Florida-based healthcare provider. </font></td></tr></table><table border="0" cellpadding="0" cellspacing="0" style="border-collapse:collapse;font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10.5pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;font-style:normal;font-weight:normal;">Ended the quarter with over $29 million in cash and cash equivalents and no long term debt; Robust balance sheet enabled the Company to repurchase 23,800 shares of CSPI common stock for $384 thousand during the fiscal second quarter.</font></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;">&#8220;Excluding a single, multi-million-dollar deal recorded in the year-ago fiscal second quarter, our business generated double-digit sales growth in the fiscal second quarter compared to the year-ago period,&#8221; commented Victor Dellovo, Chief Executive Officer. &#8220;The prior year multi-million-dollar sale has proven to be successful resulting in the customer renewing customer support for twelve months in a six-figure contract during the fiscal second quarter. Despite challenging operating conditions, we&#8217;re pleased with the overall performance of the Technology Solutions-based businesses and the market penetration of our AZT PROTECT product line. The flexibility of our organization, and the prospects for AZT PROTECT growth enable our company to maximize our opportunities in the current operating environment.&#8221;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;">&#8220;During the quarter, our reseller and distribution-focused strategy resulted in an increase in new AZT PROTECT customers and an expanded pipeline of new business opportunities. Launching a revolutionary new product requires significant investment, which we have been diligently making while carefully managing our resources. Nearly two years into the launch, we are where we thought we would be, our brand is more widely known, and we are gaining traction with key manufacturers, resellers and customers. In addition to the new customers signed in the fiscal second quarter, in April we were engaged to protect equipment at one of the largest cell tower providers in South Africa. This relationship, along with several other previously signed customers, have the potential to significantly expand into larger, six and seven figure contracts over the next eighteen months to two years.&#8221; &#160;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;font-weight:bold;">Fiscal 2025 Second Quarter Results</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;font-weight:bold;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;">Revenue for the fiscal second quarter ended March 31, 2025, was $13.1 million compared to revenue of $13.7 million for the fiscal second quarter ended March 31, 2024. Product revenue represented $8.6 million of overall sales, a slight increase compared to the year-ago Product revenue of $8.5 million. &#160;Services revenue for the period was $4.6 million as compared to $5.2 million during the fiscal 2024 second quarter. The year-ago fiscal second quarter included a multi-million dollar agreement with a global pharmaceutical company, significantly increasing the prior year period revenue, gross profit, gross margin and net income. </font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;">Gross profit for the three months ended March 31, 2025, was $4.2 million compared to $6.5 million. &#160;Gross margin for the fiscal second quarter ended March 31, 2025, was 32% of sales compared to 47% of sales for the year ago fiscal second quarter. The company had an income tax benefit of $683 thousand primarily from the vesting of restricted stock awards in the quarter. The Company reported a net loss of $(0.1) million, or </font></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="display:inline-block;visibility:hidden;width:0pt;">&#8203;</font><br><font style="visibility:hidden;">&#8203;</font><font style="visibility:hidden;">&#8203;</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-bottom:30pt;margin-left:8.09%;margin-right:8.82%;margin-top:30pt;page-break-after:always;width:83.09%;border-width:0;"><div style="max-width:100%;padding-left:8.09%;padding-right:8.82%;position:relative;"><div style="margin-top:8pt;min-height:35pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt;"><b style="font-weight:bold;">Exhibit 99.1</b></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;">$(0.01) per diluted common share for the fiscal second quarter, compared to net income of $1.6 million, or $0.16 per diluted common share for the prior fiscal year second quarter.</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;">The </font><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;background:#ffffff;">Company continued to maintain a robust balance sheet and as of March 31, 2025, had cash and cash equivalents of $29.5 million. The financial resources, coupled with no long term debt, are allowing the Company to continue to build market awareness for the AZT PROTECT offering. &#160;Additionally, during the quarter the Company repurchased 23,800 shares for a total cost of $384 thousand. &#160;Approximately 311 thousand shares remain available under the share repurchase authorization approved by the Board of Directors in 2011.</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;visibility:hidden;background:#ffffff;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 11.25pt 0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;font-weight:bold;">Fiscal Year 2025 Six Month Results </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;background:#ffffff;">Revenue for the fiscal six months ended March 31, 2025, was $28.8 million compared with revenue of $29.1 million in prior year period, which included the aforementioned multi-</font><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;">million-dollar agreement with a global pharmaceutical company.</font><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;background:#ffffff;"> Gross profit for the fiscal six months ended March 31, 2025, was $8.8 million, or 30% of sales compared with $10.6 million, or 36% of sales. The Company had an income tax benefit of $798 thousand primarily from restricted stock awards. The Company reported net income of $364 thousand, or $0.04 income per diluted common share in the fiscal six months ended March 31, 2025, compared with net income of $1.5 million, or $0.15 income per diluted common share for the fiscal six months ended March 31, 2024.</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;visibility:hidden;background:#ffffff;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;font-weight:bold;background:#ffffff;">Conference Call Details</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:12pt;margin:0pt;"><font style="background:#ffffff;">CSPi Chief Executive Officer Victor Dellovo and Chief Financial Officer Gary W. Levine will host a conference call at 10:00 a.m. (ET) today to review CSPi&#8217;s financial results and provide a business update. To listen to a live webcast of the call, the event link </font>https://www.webcaster4.com/Webcast/Page/2912/52425. <font style="background:#ffffff;">Individuals also may listen to the call via telephone, by dialing 973-528-0011or 888-506-0062 and use the Participant Access Code: 300898 when greeted by the live operator. For interested parties unable to participate in the live call, an archived version of the webcast will be available for approximately one year on CSPi&#8217;s website.</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt;"><font style="font-weight:bold;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;font-weight:bold;">About CSPi</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt;"><font style="margin-bottom:5pt;margin-top:5pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Aptos';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><font style="color:#004eb0;font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;">CSPi</font><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;">&#160;(NASDAQ:CSPI) operates two divisions, each with unique expertise in designing and implementing technology solutions to help customers use technology to success. The High Performance Product division, including </font><font style="color:#004eb0;font-size:12pt;">ARIA Cybersecurity Solutions</font><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;">, recognizes that better, stronger, more&#8239;effective cybersecurity starts with a smarter approach. ARIA&#39;s solutions provide new ways for organizations to protect their most critical assets&#8212;they can shield their critical applications from cyberattack with the AZT solution, while monitoring internal traffic, device-level logs, and alert output with our ARIA ADR solution to&#8239;substantially&#8239;improve threat detection and surgically disrupt cyberattacks and data exfiltration. Rounding out the portfolio, Aria&#39;s AZT Gateway Software allows us to interrogate network packets at 100mbps line-rate to enforce forwarding and capture policies on the fly.&#160;Customers in a range of industries rely on our solutions to accelerate incident response, automate breach detection, and protect their most critical assets and applications&#8212;no matter where they are stored, used, or accessed.&#160;</font></p><p style="font-family:'Aptos';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Aptos';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;">CSPi&#39;s </font><font style="color:#004eb0;font-size:12pt;">Technology Solutions division</font><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;">&#160;helps clients achieve their business goals and accelerate time to market through innovative IT solutions and professional services by partnering with best-in-class technology providers. For organizations that want the benefits of an IT department without the cost, we offer a robust catalog of Managed IT Services providing 24&#215;365 proactive support. Our team of engineers have expertise across major industries supporting five key technology areas: Advanced Security; Communication and Collaboration; Data Center; Networking; and Wireless &amp; Mobility.</font></p><p style="font-family:'Aptos';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Aptos';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Aptos';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Aptos';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;visibility:hidden;">&#8203;</font></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="display:inline-block;visibility:hidden;width:0pt;">&#8203;</font><br><font style="visibility:hidden;">&#8203;</font><font style="visibility:hidden;">&#8203;</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-bottom:30pt;margin-left:8.09%;margin-right:8.82%;margin-top:30pt;page-break-after:always;width:83.09%;border-width:0;"><div style="max-width:100%;padding-left:8.09%;padding-right:8.82%;position:relative;"><div style="margin-top:8pt;min-height:35pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt;"><b style="font-weight:bold;">Exhibit 99.1</b></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;font-weight:bold;">Safe Harbor</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-align:justify;background:#ffffff;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;font-weight:bold;margin-bottom:5pt;margin-top:5pt;visibility:hidden;background:#ffff00;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;">The Company wishes to take advantage of the &quot;Safe Harbor&quot; provisions of the Private Securities Litigation Reform Act of 1995 with respect to statements that may be deemed to be forward-looking under the Act. Such forward-looking statements may include but are not limited to projections or guidance concerning business performance, revenue, earnings, cash flow, the current economic environment, liquidity, strategic decisions and actions, and other financial and operational measures. Statements include we were engaged to protect equipment at one of the largest cell tower providers in South Africa. This relationship, along with several other previously signed customers, has the potential to significantly expand into larger, six and seven figure contracts over the next eighteen months to two year.</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:14pt 0pt 0pt 0pt;"><font style="font-family:'Arial','Helvetica','sans-serif';font-size:10.5pt;">The Company cautions that numerous factors could cause actual results to differ materially from forward-looking statements made by the Company. Such risks include general economic conditions, market factors, competitive factors and pricing pressures, and others described in the Company&#39;s filings with the Securities and Exchange Commission (&#8220;SEC&#8221;). Please refer to the section on forward-looking statements included in the Company&#39;s filings with the SEC.</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;margin:14pt 0pt 0pt 0pt;"><b style="font-weight:bold;">SOURCE: </b>CSP Inc.</p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;margin:14pt 0pt 0pt 0pt;"><b style="font-weight:bold;">CONTACT:</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;margin:14pt 0pt 0pt 0pt;">CSP Inc.<br>Gary Levine, 978-954-5040<br>Chief Financial Officer</p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="display:inline-block;visibility:hidden;width:0pt;">&#8203;</font><br><font style="visibility:hidden;">&#8203;</font><font style="visibility:hidden;">&#8203;</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-bottom:30pt;margin-left:8.09%;margin-right:8.82%;margin-top:30pt;page-break-after:always;width:83.09%;border-width:0;"><div style="max-width:100%;padding-left:8.09%;padding-right:8.82%;position:relative;"><div style="margin-top:8pt;min-height:35pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt;"><b style="font-weight:bold;">Exhibit 99.1</b></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;text-align:center;margin:14pt 0pt 7pt 0pt;"><b style="font-weight:bold;white-space:pre-wrap;">CSP INC. AND SUBSIDIARIES  </b><b style="font-weight:bold;"><br></b><b style="font-weight:bold;white-space:pre-wrap;">CONDENSED UNAUDITED CONSOLIDATED BALANCE SHEETS  </b><b style="font-weight:bold;"><br></b><b style="font-weight:bold;">(Amounts in thousands)</b></p><div align="left"><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:69.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:69.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31, 2025</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,&#160;2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:69.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:8pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><font style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><font style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:8pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><font style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><font style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</font></p></td></tr><tr><td style="vertical-align:bottom;width:69.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Assets</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Current assets:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Cash and cash equivalents</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 29,495</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 30,585</font></p></td></tr><tr><td style="vertical-align:bottom;width:69.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Accounts receivable, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 13,645</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 14,494</font></p></td></tr><tr><td style="vertical-align:bottom;width:69.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Financing receivables, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 2,727</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 4,384</font></p></td></tr><tr><td style="vertical-align:bottom;width:69.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Inventories</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 2,109</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 2,293</font></p></td></tr><tr><td style="vertical-align:bottom;width:69.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Other current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 2,366</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 3,093</font></p></td></tr><tr><td style="vertical-align:bottom;width:69.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 50,342</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 54,849</font></p></td></tr><tr><td style="vertical-align:bottom;width:69.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Financing receivables due after one year, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 3,664</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 2,922</font></p></td></tr><tr><td style="vertical-align:bottom;width:69.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cash surrender value of life insurance</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 5,696</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 5,589</font></p></td></tr><tr><td style="vertical-align:bottom;width:69.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 7,420</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 6,076</font></p></td></tr><tr><td style="vertical-align:bottom;width:69.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 67,122</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 69,436</font></p></td></tr><tr><td style="vertical-align:bottom;width:69.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td></tr><tr><td style="vertical-align:bottom;width:69.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Liabilities and Shareholders&#8217; Equity</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Current liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 15,058</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 18,682</font></p></td></tr><tr><td style="vertical-align:bottom;width:69.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Pension and retirement plans</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 1,275</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 1,306</font></p></td></tr><tr><td style="vertical-align:bottom;width:69.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other non-current liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 3,336</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 2,178</font></p></td></tr><tr><td style="vertical-align:bottom;width:69.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Shareholders&#8217; equity</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 47,453</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 47,270</font></p></td></tr><tr><td style="vertical-align:bottom;width:69.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total liabilities and shareholders&#8217; equity</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 67,122</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.85%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 69,436</font></p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt;"><font style="font-size:11pt;font-weight:bold;visibility:hidden;">&#8203;</font></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="display:inline-block;visibility:hidden;width:0pt;">&#8203;</font><br><font style="visibility:hidden;">&#8203;</font><font style="visibility:hidden;">&#8203;</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-bottom:30pt;margin-left:8.09%;margin-right:8.82%;margin-top:30pt;page-break-after:always;width:83.09%;border-width:0;"><div style="max-width:100%;padding-left:8.09%;padding-right:8.82%;position:relative;"><div style="margin-top:8pt;min-height:35pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;margin:0pt;"><b style="font-weight:bold;">Exhibit 99.1</b></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.43;text-align:center;margin:0pt 0pt 7pt 0pt;"><b style="font-weight:bold;white-space:pre-wrap;">CSP INC. AND SUBSIDIARIES  </b><b style="font-weight:bold;"><br></b><b style="font-weight:bold;">CONDENSED UNAUDITED CONSOLIDATED STATEMENTS OF OPERATIONS </b><b style="font-weight:bold;"><br></b><b style="font-weight:bold;">(Amounts in thousands, except per share data)</b></p><div align="left"><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:55.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:55.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:8pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:8pt;visibility:hidden;">&#8203;</font></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:20.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three months ended </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:8pt;visibility:hidden;">&#8203;</font></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:20.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Six months ended </b></p></td></tr><tr><td style="vertical-align:bottom;width:55.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:8pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31</b></p></td></tr><tr><td style="vertical-align:bottom;width:55.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:8pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:8pt;visibility:hidden;">&#8203;</font></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2025</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</font></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</font></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2025</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</font></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td></tr><tr><td style="vertical-align:top;width:55.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Sales:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:55.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Product</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 8,552</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 8,458</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 19,567</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 19,865</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Services</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 4,595</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 5,248</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 9,250</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 9,216</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total sales</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 13,147</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 13,706</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 28,817</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 29,081</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Cost of sales:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:55.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Product</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 6,879</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 5,416</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 15,998</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 14,644</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Services</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 2,061</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 1,812</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 4,048</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 3,864</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total cost of sales</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 8,940</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 7,228</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 20,046</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 18,508</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 4,207</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 6,478</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 8,771</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 10,573</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Operating expenses:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:55.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Engineering and development</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 763</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 726</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 1,549</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 1,426</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Selling, general and administrative</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 4,438</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 4,518</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 8,570</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 8,256</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total operating expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 5,201</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 5,244</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 10,119</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 9,682</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Operating (loss) income</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="white-space:pre-wrap;"> (994)</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 1,234</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="white-space:pre-wrap;"> (1,348)</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 891</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Other income, net</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 203</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 489</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 914</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 772</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-weight:bold;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">(Loss) income before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="white-space:pre-wrap;"> (791)</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 1,723</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="white-space:pre-wrap;"> (434)</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 1,663</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Income tax (benefit) expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="white-space:pre-wrap;"> (683)</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 135</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="white-space:pre-wrap;"> (798)</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 148</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;">Net (loss) income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="white-space:pre-wrap;"> (108)</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 1,588</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 364</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 1,515</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><font style="white-space:pre-wrap;">             Net (loss) income attributable to common shareholders</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="white-space:pre-wrap;"> (108)</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 1,482</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 341</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 1,417</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Net (loss) income per common share - basic</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="white-space:pre-wrap;"> (0.01)</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 0.16</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 0.04</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 0.16</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Weighted average shares outstanding &#8211; basic</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 9,343</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 9,070</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 9,232</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 8,967</font></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:55.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Net (loss) income per common share - diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="white-space:pre-wrap;"> (0.01)</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 0.16</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 0.04</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 0.15</font></p></td></tr><tr><td style="vertical-align:top;width:55.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Weighted average shares outstanding net income - diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 9,343</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 9,455</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 9,614</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><font style="white-space:pre-wrap;"> 9,366</font></p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="display:inline-block;visibility:hidden;width:0pt;">&#8203;</font><br><font style="visibility:hidden;">&#8203;</font><font style="visibility:hidden;">&#8203;</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-left:8.09%;margin-right:8.82%;margin-top:30pt;page-break-after:avoid;width:83.09%;border-width:0;"></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>3
<FILENAME>cspi-20250514.xsd
<DESCRIPTION>EX-101.SCH
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<!--XBRL document created with Toppan Merrill Bridge  10.10.0.1 -->
<!--Based on XBRL 2.1-->
<!--Created on: 5/14/2025 12:50:46 PM-->
<!--Modified on: 5/14/2025 12:50:46 PM-->
<xsd:schema targetNamespace="http://www.cspi.com/20250514" attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:dei="http://xbrl.sec.gov/dei/2024" xmlns:us-gaap="http://fasb.org/us-gaap/2024" xmlns:srt-types="http://fasb.org/srt-types/2024" xmlns:us-roles="http://fasb.org/us-roles/2024" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:currency="http://xbrl.sec.gov/currency/2024" xmlns:xl="http://www.xbrl.org/2003/XLink" xmlns:naics="http://xbrl.sec.gov/naics/2024" xmlns:srt-roles="http://fasb.org/srt-roles/2024" xmlns:country="http://xbrl.sec.gov/country/2024" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:srt="http://fasb.org/srt/2024" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:exch="http://xbrl.sec.gov/exch/2024" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sic="http://xbrl.sec.gov/sic/2024" xmlns:us-types="http://fasb.org/us-types/2024" xmlns:negated="http://www.xbrl.org/2009/role/negated" xmlns:stpr="http://xbrl.sec.gov/stpr/2024" xmlns:attributeFormDefault="unqualified" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:cspi="http://www.cspi.com/20250514" xmlns:enum2="http://xbrl.org/2020/extensible-enumerations-2.0" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2022-03-31" xmlns:deprecated="http://www.xbrl.org/2009/role/deprecated" xmlns:dtr="http://www.xbrl.org/2009/dtr" xmlns:net="http://www.xbrl.org/2009/role/net" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:us-gaap-ebp="http://fasb.org/us-gaap-ebp/2024" xmlns:cyd-af-sub="http://xbrl.sec.gov/cyd-af-sub/2024">
  <xsd:annotation>
    <xsd:appinfo>
      <link:roleType roleURI="http://www.cspi.com/role/DocumentDocumentAndEntityInformation" id="DocumentDocumentAndEntityInformation">
        <link:definition>00090 - Document - Document and Entity Information</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.cspi.com/role/DisclosureStandardAndCustomAxisDomainDefaults" id="DisclosureStandardAndCustomAxisDomainDefaults">
        <link:definition>99900 - Disclosure - Standard And Custom Axis Domain Defaults</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:linkbaseRef xlink:type="simple" xlink:href="cspi-20250514_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:linkbaseRef xlink:type="simple" xlink:href="cspi-20250514_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:linkbaseRef xlink:type="simple" xlink:href="cspi-20250514_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
    </xsd:appinfo>
  </xsd:annotation>
  <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://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://www.xbrl.org/dtr/type/2022-03-31" schemaLocation="https://www.xbrl.org/dtr/type/2022-03-31/types.xsd" />
</xsd:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>4
<FILENAME>cspi-20250514_def.xml
<DESCRIPTION>EX-101.DEF
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<!--XBRL document created with Toppan Merrill Bridge  10.10.0.1 -->
<!--Based on XBRL 2.1-->
<!--Created on: 5/14/2025 12:50:46 PM-->
<!--Modified on: 5/14/2025 12:50:46 PM-->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt">
  <link:roleRef roleURI="http://www.cspi.com/role/DisclosureStandardAndCustomAxisDomainDefaults" xlink:href="cspi-20250514.xsd#DisclosureStandardAndCustomAxisDomainDefaults" xlink:type="simple" />
  <link:arcroleRef arcroleURI="http://www.esma.europa.eu/xbrl/esef/arcrole/wider-narrower" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/arcrole/esma-arcrole-2018-11-21.xsd#wider-narrower" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" />
  <link:definitionLink xlink:role="http://www.cspi.com/role/DisclosureStandardAndCustomAxisDomainDefaults" xlink:type="extended" xlink:title="99900 - Disclosure - Standard And Custom Axis Domain Defaults">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentInformationDocumentAxis" xlink:label="dei_DocumentInformationDocumentAxis_1" xlink:title="dei_DocumentInformationDocumentAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentDomain" xlink:label="dei_DocumentDomain_1" xlink:title="dei_DocumentDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="dei_DocumentInformationDocumentAxis_1" xlink:to="dei_DocumentDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:dei_DocumentInformationDocumentAxis_1 To dei_DocumentDomain_1" order="1" />
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>5
<FILENAME>cspi-20250514_lab.xml
<DESCRIPTION>EX-101.LAB
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<!--XBRL document created with Toppan Merrill Bridge  10.10.0.1 -->
<!--Based on XBRL 2.1-->
<!--Created on: 5/14/2025 12:50:46 PM-->
<!--Modified on: 5/14/2025 12:50:46 PM-->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink">
  <link:labelLink xlink:type="extended" xlink:role="http://www.xbrl.org/2003/role/link">
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CoverAbstract" xlink:label="dei_CoverAbstract" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CoverAbstract" xlink:to="dei_CoverAbstract_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CoverAbstract_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Document and Entity Information [Abstract]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentInformationTable" xlink:label="dei_DocumentInformationTable" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentInformationTable" xlink:to="dei_DocumentInformationTable_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentInformationTable_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Document Information [Table]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentInformationLineItems" xlink:label="dei_DocumentInformationLineItems" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentInformationLineItems_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentInformationLineItems_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Document Information [Line Items]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentType" xlink:label="dei_DocumentType" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentType_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Document Type</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentPeriodEndDate_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Document Period End Date</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFileNumber" xlink:to="dei_EntityFileNumber_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityFileNumber_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Securities Act File Number</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityRegistrantName_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Entity Registrant Name</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityIncorporationStateCountryCode_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Entity Incorporation, State or Country Code</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityTaxIdentificationNumber_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Entity Tax Identification Number</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine1_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Entity Address, Address Line One</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressAddressLine2" xlink:label="dei_EntityAddressAddressLine2" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine2" xlink:to="dei_EntityAddressAddressLine2_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine2_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Entity Address, Address Line Two</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressCityOrTown_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Entity Address, City or Town</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressStateOrProvince_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Entity Address, State or Province</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressPostalZipCode_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Entity Address, Postal Zip Code</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CityAreaCode" xlink:to="dei_CityAreaCode_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CityAreaCode_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">City Area Code</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_LocalPhoneNumber_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Local Phone Number</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_WrittenCommunications" xlink:label="dei_WrittenCommunications" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_WrittenCommunications" xlink:to="dei_WrittenCommunications_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_WrittenCommunications_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Written Communications</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_SolicitingMaterial" xlink:label="dei_SolicitingMaterial" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SolicitingMaterial" xlink:to="dei_SolicitingMaterial_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SolicitingMaterial_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Soliciting Material</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_PreCommencementTenderOffer" xlink:label="dei_PreCommencementTenderOffer" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_PreCommencementTenderOffer" xlink:to="dei_PreCommencementTenderOffer_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_PreCommencementTenderOffer_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Pre-commencement Tender Offer</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="dei_PreCommencementIssuerTenderOffer" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_PreCommencementIssuerTenderOffer" xlink:to="dei_PreCommencementIssuerTenderOffer_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_PreCommencementIssuerTenderOffer_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Pre-commencement Issuer Tender Offer</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12bTitle" xlink:to="dei_Security12bTitle_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Security12bTitle_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Title of 12(b) Security</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_TradingSymbol" xlink:to="dei_TradingSymbol_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_TradingSymbol_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Trading Symbol</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityExchangeName" xlink:to="dei_SecurityExchangeName_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SecurityExchangeName_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Security Exchange Name</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityEmergingGrowthCompany_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Entity Emerging Growth Company</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCentralIndexKey_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Entity Central Index Key</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" xmlns="http://www.xbrl.org/2003/linkbase" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag_lbl" xmlns="http://www.xbrl.org/2003/linkbase" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AmendmentFlag_lbl" xml:lang="en-US" xmlns="http://www.xbrl.org/2003/linkbase">Amendment Flag</label>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>6
<FILENAME>cspi-20250514_pre.xml
<DESCRIPTION>EX-101.PRE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<!--XBRL document created with Toppan Merrill Bridge  10.10.0.1 -->
<!--Based on XBRL 2.1-->
<!--Created on: 5/14/2025 12:50:46 PM-->
<!--Modified on: 5/14/2025 12:50:46 PM-->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xlink="http://www.w3.org/1999/xlink">
  <roleRef xlink:type="simple" xlink:href="cspi-20250514.xsd#DocumentDocumentAndEntityInformation" roleURI="http://www.cspi.com/role/DocumentDocumentAndEntityInformation" xmlns="http://www.xbrl.org/2003/linkbase" />
  <presentationLink xlink:role="http://www.cspi.com/role/DocumentDocumentAndEntityInformation" xlink:type="extended" xlink:title="00090 - Document - Document and Entity Information" xmlns="http://www.xbrl.org/2003/linkbase">
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CoverAbstract" xlink:label="dei_CoverAbstract" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentType" xlink:label="dei_DocumentType_638828238465945030" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentType_638828238465945030" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate_638828238465945030" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentPeriodEndDate_638828238465945030" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber_638828238465945030" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityFileNumber_638828238465945030" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName_638828238465945030" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityRegistrantName_638828238465945030" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode_638828238465955031" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityIncorporationStateCountryCode_638828238465955031" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber_638828238465955031" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityTaxIdentificationNumber_638828238465955031" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1_638828238465955031" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressAddressLine1_638828238465955031" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressAddressLine2" xlink:label="dei_EntityAddressAddressLine2_638828238465955031" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressAddressLine2_638828238465955031" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown_638828238465955031" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressCityOrTown_638828238465955031" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince_638828238465955031" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressStateOrProvince_638828238465955031" order="10" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode_638828238465955031" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressPostalZipCode_638828238465955031" order="11" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode_638828238465955031" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_CityAreaCode_638828238465955031" order="12" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber_638828238465955031" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_LocalPhoneNumber_638828238465955031" order="13" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_WrittenCommunications" xlink:label="dei_WrittenCommunications_638828238465955031" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_WrittenCommunications_638828238465955031" order="14" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_SolicitingMaterial" xlink:label="dei_SolicitingMaterial_638828238465965032" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_SolicitingMaterial_638828238465965032" order="15" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_PreCommencementTenderOffer" xlink:label="dei_PreCommencementTenderOffer_638828238465965032" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_PreCommencementTenderOffer_638828238465965032" order="16" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="dei_PreCommencementIssuerTenderOffer_638828238465965032" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_PreCommencementIssuerTenderOffer_638828238465965032" order="17" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle_638828238465965032" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_Security12bTitle_638828238465965032" order="18" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol_638828238465965032" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_TradingSymbol_638828238465965032" order="19" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName_638828238465965032" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_SecurityExchangeName_638828238465965032" order="20" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany_638828238465965032" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityEmergingGrowthCompany_638828238465965032" order="21" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey_638828238465975040" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityCentralIndexKey_638828238465975040" order="22" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag_638828238465975040" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_AmendmentFlag_638828238465975040" order="23" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>8
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.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>May 14, 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_CoverAbstract', window );"><strong>Document and Entity Information [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">8-K<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">May 14,  2025<span></span>
</td>
</tr>
<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 );">Securities Act File Number</a></td>
<td class="text">000-10843<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">CSP Inc.<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</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_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">04-2441294<span></span>
</td>
</tr>
<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">175 Cabot 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_EntityAddressAddressLine2', window );">Entity Address, Address Line Two</a></td>
<td class="text">Suite 210<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Lowell<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">MA<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">01854<span></span>
</td>
</tr>
<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_CityAreaCode', window );">City Area Code</a></td>
<td class="text">978<span></span>
</td>
</tr>
<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_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">954-5038<span></span>
</td>
</tr>
<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_WrittenCommunications', window );">Written Communications</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_SolicitingMaterial', window );">Soliciting Material</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_PreCommencementTenderOffer', window );">Pre-commencement 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_PreCommencementIssuerTenderOffer', window );">Pre-commencement Issuer 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_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock, par value $0.01 per share<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">CSPI<span></span>
</td>
</tr>
<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_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_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0000356037<span></span>
</td>
</tr>
<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>
</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_CoverAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cover page.</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_CoverAbstract</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_EntityAddressAddressLine2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 2 such as Street or Suite number</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_EntityAddressAddressLine2</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>9
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( !E'KEI&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    ( !E'KEH$,^Y"[P   "L"   1
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
M@2";_-;;I/;=X Q\U*M:I60K$3]+!WP?D@9CC%OT-%^/%&*MIK&MQMHQ#'F
M6/,,H68XWX=%FAHSU8NL.8T*;T'50.4_V]0-:/8--!R1!5XQF;8VH^1."CS<
M_N\-L,+$CN'MB[\!4$L#!!0    ( !E'KEK&J(.O700  $41   8    >&PO
M=V]R:W-H965T<R]S:&5E=#$N>&ULG9AO<^(V$,:_BL;M=-J9$%O&!)(",X0D
M+7-)C@NT-]-.7PA;@":VY9/D$+Y]5P9LKF?6]-[@OWK\\^[J69G^1JI7O>;<
MD/<D3O7 61N3W;BN#M<\8?I29CR%*TNI$F;@4*U<G2G.HF)0$KN^YUVY"1.I
M,^P7YZ9JV)>YB47*IXKH/$F8VM[R6&X&#G4.)U[$:FWL"7?8S]B*S[CY(YLJ
M.')+E4@D/-5"ID3QY< 9T9M;OV,'%'?\*?A&'^T3^RH+*5_MP20:.)XEXC$/
MC95@L'GC8Q['5@DXONQ%G?*9=N#Q_D']H7AY>)D%TWPLX\\B,NN!TW-(Q)<L
MC\V+W/S.]R]4 (8RUL4OV>SN#0*'A+DV,MD/!H)$I+LM>]\'XGB =V* OQ_@
M%]R[!Q64=\RP85_)#5'V;E"S.\6K%J,!3J0V*S.CX*J <69X)\,<@FP(2R-R
MGQIAMF22[K(-4>N[!AYB;W7#O>#M3M _(?C$MH0&%\3W_,[7HUU *_G\DL\O
MY-K?QT?^'BVT49#;?^I0=]I!O;8M^!N=L9 /'*AHS=4;=X8__4"OO%\1\G9)
MWL;4*_+Y-N-U</CP7NL# A&4$,%Y$%.NA+01C C422T/KG3(:U-B.R59!]6;
M\3!7P@BNR2@TY$'$G#SGR8*K.C9<R_.\%O5Z01OANBJYKE"M?8V]\)6PA06A
M>V9);;QPG?%L"H4:7B)(W1*I>PX2J$F52544_@69&<@CD8J,99X:M85M5,N)
MBS^-$,)>2=@[AW#.WLDD@G(32Q'NYN?IE.**7M#R@X#ZUP&"=UWB79^#-XHB
MF.;ZXK!#'N$^\C&MC1JN2+L=,F8+:2 -"KP7@:1>9<7>]V/.-[+6C'')62Z@
M2'SJ88!'O8+^+\"Q/8(*G,M-?:? Y1[E!KHQ1E9U"8I:^3=DY>28*ODFTK V
MQ0V:Z,R@51N@N)'_%VTJM6$Q^4MD)V=L@Z)'>QUL6M"J.U#<U(L$CF U=QH%
M%[CN]C"0JAE0W,$?90@QF:YEBG6!!I'K3M#J>&V4J&H#%/?OS]"<#$\A,$F2
MIWL[T[54N-"2Q9IC2%4;H+A5SV0L0FB9Z8H\07DKP>):'ERED:<R?8I[]%3Q
M5@CAX3"_=BL=GD9<D8_+Y8G\X7J-9)7?4]R>OR&;:)T#62,@+ML$Z%=6[^.^
M/!<&UCMR2:C_\^(7LE\,;6O7L+B2K4_HLS,CP]<+DC%%WEB<<_*C=^E1DL';
MZC53*'7E_SYNV'/%(EM]LVVRD+6UUR  BZ()1G+T58![\R%@Y/X]7+-TQ4^N
MTAJ$GD>SN]$GC*DR>O\LH[]/N%K9*/T&"F9M#21C:7UJ<<'&<JM\WL=M>H\V
MAJF@P&<G, O>R0=>#X5+P5K;:W>NO'87(ZN,W\<]>P33,RJFZ$/,5K4\N,#)
M(+E''\7V#X8G9M.B2<R7(.1==D%7[;[9=P=&9L5W,JSJX*N[V%US!GYA;X#K
M2RG-X<!^>I?_G S_!5!+ P04    "  91ZY:GZ ;\+$"  #B#   #0   'AL
M+W-T>6QE<RYX;6S=5VUKVS 0_BM"/V!N8FKBD1BV0&&PC4+S85^56'8$>O%D
MN7/ZZZ>S;"=I=67=A['-H<G=/;J[1W<GF:Y;=Y+\X<BY([V2NMW0HW/-^R1I
M#T>N6/O.-%Q[I#)6,>=56R=M8SDK6W!2,EG>W&2)8D+38JT[=:=<2PZFTVY#
M;VA2K"NCSY:4!H-?RA0GCTQNZ)9)L;=B6,N4D*=@7H+A8*2QQ'DJ?$,78&F?
M KP(&K <XRBAC05C$C*$[_VX_!DP::U7A90SP24-AF+=,.>XU7=>&18/QA<0
M&>7=J?$,:\M.B^4M/3L,/S[)WMB2VSG-@DZF8BUY!72LJ(_PZTR3 .B<45XH
M!:N-9@.'R6,4?-@#E_(!6OBMNHK=5R3TXE,);2"PU4GTA$8QA D*Q+^,%F)?
MA+W]K;"D$8_&?>S\;O2@?^^,X_>65Z(?]+Z:\V/1%WATUC3R]$&*6BL>]O[+
M"8LUF_S(T5CQY+/!I!R\@5M*'KEUXG!I^6%9L^.]FZ:IKW#.RW^0\Y^M<\TU
MMTQ>DO:C_S=7^2V,D_'T7!S1JP,Z6PE<A!OZ%>Y7>>9 ]IV03NA1.XJRY/K%
M.?7A'=O["_PJOE]?\HIUTNUF<$//\A=>BD[E\ZI[J,NXZBQ_AOMHD<VWL,\E
M=,E[7FY'U=;[021>\%G'!QR>(W?#$T<PGX#%$<"P/!@#S"=X87G^I_VLT/T$
M#..VBB(KU&>%^@2O&+(=/EB>N$_NG_A.\SQ-LPRKZ'8;9;#%ZI9E\!>/AG$#
M#RP/9'I;K?%NXQ/R^AQ@/7UM0K"=XI.([12O-2#QNH%'GL>[C>4!#ZP+V.Q
M_G@>F*FX3YI"5S%NV G&D3S'$)C%^(QF&5*=##[Q_F"G)$WS/(X %F>0IA@"
MIQ%', ;  4/2='@//GL?)=-[*CG_5U/\!%!+ P04    "  91ZY:EXJ[',
M   3 @  "P   %]R96QS+RYR96QSG9*Y;L,P#$!_Q=">, ?0(8@S9?$6!/D!
M5J(/V!(%BD6=OZ_:I7&0"QEY/3P2W!YI0.TXI+:+J1C]$%)I6M6X 4BV)8]I
MSI%"KM0L'C6'TD!$VV-#L%HL/D N&6:WO606IW.D5XA<UYVE/=LO3T%O@*\Z
M3'%":4A+,P[PS=)_,O?S##5%Y4HCE5L:>-/E_G;@2=&A(E@6FD7)TZ(=I7\=
MQ_:0T^FO8R*T>EOH^7%H5 J.W&,EC'%BM/XU@LD/['X 4$L#!!0    ( !E'
MKEH<.&7J/P$  #P"   /    >&PO=V]R:V)O;VLN>&ULC5'+;L) #/R5U7Y
M$U"+5$2XE#Z0JA:5BON2=8C%/B*O RU?7R=15*1>>O)Z;(UG9A?G2,=]C$?U
MY5U(A:Z9FWF6I;(&;])-;"#(I(KD#4M+ARPU!,:F&H"]RZ9Y/LN\P:"7BY%K
M0]EU$QE*QA@$[( =PCG]SKM6G3#A'AWR=Z'[MP.M/ ;T> %;Z%RK5,?S2R2\
MQ,#&;4N*SA5Z,@QV0(SE'WC;B?PT^]0C;/8?1H04>I8+8864N-_H^8UH/($L
M#UW+\0D= ZT,PS/%ML%PZ&C$179EH\]AK$.(<_I/C+&JL(15+%L/@8<<"5PG
M,*0:FZ15,!X*/:XH$ZQZ#"PAJ748J&2W<RJGUW9PS2+W*D.:HPQH;0?AHUH+
M%0:P;W(@"2[)E1M27>EYIK=WDWM)J'7N0;#W\!J-'<V/'[?\ 5!+ P04
M"  91ZY:)!Z;HJT   #X 0  &@   'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR
M96QSM9$]#H,P#(6O$N4 -5"I0P5,75@K+A %\R,2$L6N"K<OA0&0.G1ALIXM
M?^_)3I]H%'=NH+;S)$9K!LIDR^SO *1;M(HNSN,P3VH7K.)9A@:\TKUJ$)(H
MND'8,V2>[IFBG#S^0W1UW6E\./VR./ /,+Q=Z*E%9"E*%1KD3,)HMC;!4N++
M3):BJ#(9BBJ6<%H@XLD@;6E6?;!/3K3G>1<W]T6NS>,)KM\,<'AT_@%02P,$
M%     @ &4>N6F60>9(9 0  SP,  !,   !;0V]N=&5N=%]4>7!E<UTN>&UL
MK9--3L,P$(6O$F5;)2XL6*"F&V +77 !8T\:J_Z39UK2VS-.VDJ@$A6%3:QX
MWKS/GI>LWH\1L.B=]=B4'5%\% )5!TYB'2)XKK0A.4G\FK8B2K636Q#WR^6#
M4,$3>*HH>Y3KU3.T<F^I>.EY&TWP39G 8ED\C<+,:DH9HS5*$M?%P>L?E.I$
MJ+EST&!G(BY84(JKA%SY'7#J>SM 2D9#L9&)7J5CE>BM0#I:P'K:XLH90]L:
M!3JHO>.6&F,"J;$#(&?KT70Q32:>,(S/N]G\P68*R,I-"A$YL01_QYTCR=U5
M9"-(9*:O>"&R]>S[04Y;@[Z1S>/]#&DWY(%B6.;/^'O&%_\;SO$1PNZ_/[&\
MUDX:?^:+X3]>?P%02P$"% ,4    "  91ZY:1L=-2)4   #-    $
M        @ $     9&]C4')O<',O87!P+GAM;%!+ 0(4 Q0    ( !E'KEH$
M,^Y"[P   "L"   1              "  <,   !D;V-0<F]P<R]C;W)E+GAM
M;%!+ 0(4 Q0    ( !E'KEJ97)PC$ 8  )PG   3              "  >$!
M  !X;"]T:&5M92]T:&5M93$N>&UL4$L! A0#%     @ &4>N6L:H@Z]=!
M11$  !@              ("!(@@  'AL+W=O<FMS:&5E=',O<VAE970Q+GAM
M;%!+ 0(4 Q0    ( !E'KEJ?H!OPL0(  .(,   -              "  ;4,
M  !X;"]S='EL97,N>&UL4$L! A0#%     @ &4>N6I>*NQS     $P(   L
M             ( !D0\  %]R96QS+RYR96QS4$L! A0#%     @ &4>N6APX
M9>H_ 0  / (   \              ( !>A   'AL+W=O<FMB;V]K+GAM;%!+
M 0(4 Q0    ( !E'KEHD'INBK0   /@!   :              "  >81  !X
M;"]?<F5L<R]W;W)K8F]O:RYX;6PN<F5L<U!+ 0(4 Q0    ( !E'KEIED'F2
M&0$  ,\#   3              "  <L2  !;0V]N=&5N=%]4>7!E<UTN>&UL
64$L%!@     )  D /@(  !44      $!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>10
<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>11
<FILENAME>report.css
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
/* Updated 2009-11-04 */
/* v2.2.0.24 */

/* DefRef Styles */
.report table.authRefData{
	background-color: #def;
	border: 2px solid #2F4497;
	font-size: 1em;
	position: absolute;
}

.report table.authRefData a {
	display: block;
	font-weight: bold;
}

.report table.authRefData p {
	margin-top: 0px;
}

.report table.authRefData .hide {
	background-color: #2F4497;
	padding: 1px 3px 0px 0px;
	text-align: right;
}

.report table.authRefData .hide a:hover {
	background-color: #2F4497;
}

.report table.authRefData .body {
	height: 150px;
	overflow: auto;
	width: 400px;
}

.report table.authRefData table{
	font-size: 1em;
}

/* Report Styles */
.pl a, .pl a:visited {
	color: black;
	text-decoration: none;
}

/* table */
.report {
	background-color: white;
	border: 2px solid #acf;
	clear: both;
	color: black;
	font: normal 8pt Helvetica, Arial, san-serif;
	margin-bottom: 2em;
}

.report hr {
	border: 1px solid #acf;
}

/* Top labels */
.report th {
	background-color: #acf;
	color: black;
	font-weight: bold;
	text-align: center;
}

.report th.void	{
	background-color: transparent;
	color: #000000;
	font: bold 10pt Helvetica, Arial, san-serif;
	text-align: left;
}

.report .pl {
	text-align: left;
	vertical-align: top;
	white-space: normal;
	width: 200px;
	white-space: normal; /* word-wrap: break-word; */
}

.report td.pl a.a {
	cursor: pointer;
	display: block;
	width: 200px;
	overflow: hidden;
}

.report td.pl div.a {
	width: 200px;
}

.report td.pl a:hover {
	background-color: #ffc;
}

/* Header rows... */
.report tr.rh {
	background-color: #acf;
	color: black;
	font-weight: bold;
}

/* Calendars... */
.report .rc {
	background-color: #f0f0f0;
}

/* Even rows... */
.report .re, .report .reu {
	background-color: #def;
}

.report .reu td {
	border-bottom: 1px solid black;
}

/* Odd rows... */
.report .ro, .report .rou {
	background-color: white;
}

.report .rou td {
	border-bottom: 1px solid black;
}

.report .rou table td, .report .reu table td {
	border-bottom: 0px solid black;
}

/* styles for footnote marker */
.report .fn {
	white-space: nowrap;
}

/* styles for numeric types */
.report .num, .report .nump {
	text-align: right;
	white-space: nowrap;
}

.report .nump {
	padding-left: 2em;
}

.report .nump {
	padding: 0px 0.4em 0px 2em;
}

/* styles for text types */
.report .text {
	text-align: left;
	white-space: normal;
}

.report .text .big {
	margin-bottom: 1em;
	width: 17em;
}

.report .text .more {
	display: none;
}

.report .text .note {
	font-style: italic;
	font-weight: bold;
}

.report .text .small {
	width: 10em;
}

.report sup {
	font-style: italic;
}

.report .outerFootnotes {
	font-size: 1em;
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<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>23</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>0</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>0</UnitCount>
  <MyReports>
    <Report instance="cspi-20250514x8k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>00090 - Document - Document and Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cspi.com/role/DocumentDocumentAndEntityInformation</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>cspi-20250514.xsd</File>
    <File>cspi-20250514_def.xml</File>
    <File>cspi-20250514_lab.xml</File>
    <File>cspi-20250514_pre.xml</File>
    <File doctype="8-K" isOnlyDei="true" original="cspi-20250514x8k.htm">cspi-20250514x8k.htm</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="23">http://xbrl.sec.gov/dei/2024</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>false</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>15
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "cspi-20250514x8k.htm": {
   "nsprefix": "cspi",
   "nsuri": "http://www.cspi.com/20250514",
   "dts": {
    "schema": {
     "local": [
      "cspi-20250514.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/arcrole/esma-arcrole-2018-11-21.xsd",
      "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd",
      "https://xbrl.sec.gov/dei/2024/dei-2024.xsd"
     ]
    },
    "definitionLink": {
     "local": [
      "cspi-20250514_def.xml"
     ]
    },
    "labelLink": {
     "local": [
      "cspi-20250514_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "cspi-20250514_pre.xml"
     ]
    },
    "inline": {
     "local": [
      "cspi-20250514x8k.htm"
     ]
    }
   },
   "keyStandard": 23,
   "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": 24,
   "unitCount": 0,
   "baseTaxonomies": {
    "http://xbrl.sec.gov/dei/2024": 23
   },
   "report": {
    "R1": {
     "role": "http://www.cspi.com/role/DocumentDocumentAndEntityInformation",
     "longName": "00090 - Document - Document and Entity Information",
     "shortName": "Document and Entity Information",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cspi-20250514x8k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cspi-20250514x8k.htm",
      "first": true,
      "unique": true
     }
    }
   },
   "tag": {
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://www.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "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.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "City Area Code",
        "documentation": "Area code of city"
       }
      }
     },
     "auth_ref": []
    },
    "dei_CoverAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "CoverAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Document and Entity Information [Abstract]",
        "documentation": "Cover page."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentPeriodEndDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentPeriodEndDate",
     "presentation": [
      "http://www.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "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.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "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.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Address Line One",
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressAddressLine2": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressAddressLine2",
     "presentation": [
      "http://www.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Address Line Two",
        "documentation": "Address Line 2 such as Street or Suite number"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressCityOrTown": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressCityOrTown",
     "presentation": [
      "http://www.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "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.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "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.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "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.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "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_EntityEmergingGrowthCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityEmergingGrowthCompany",
     "presentation": [
      "http://www.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "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.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Securities Act 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.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "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.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "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.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "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_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "LocalPhoneNumber",
     "presentation": [
      "http://www.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Local Phone Number",
        "documentation": "Local phone number for entity."
       }
      }
     },
     "auth_ref": []
    },
    "dei_PreCommencementIssuerTenderOffer": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "PreCommencementIssuerTenderOffer",
     "presentation": [
      "http://www.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "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.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "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.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "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.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "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.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "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.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "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.cspi.com/role/DocumentDocumentAndEntityInformation"
     ],
     "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": [
      "r6"
     ]
    }
   }
  }
 },
 "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": "Securities Act",
   "Number": "230",
   "Section": "425"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>16
<FILENAME>0000356037-25-000032-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0000356037-25-000032-xbrl.zip
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
MO:SZ]4GV+%![!20[=\#);U!+ P04    "  91ZY:":8+5<T%  !S0P  %0
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
MH41+R+^>/H/O8 -Q0T3N*'=\5DR,C1IZ!06.0[//:Q#+U0Q @!L"T#Y5:\[
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
M"5H_%DM-$QY_?68\$N[N3FHHOF#CQ9!>\7Z+8E \H-^&>U5 1^0.ZJ]07'Y
MS']%G!M]BYB9%8Y3=B.3_X>X1=G822J('['3XM@I:P:3J"47=N3?3;^8=S[D
MNG-!OQ='7+/,V?@+?]E7!>_\#U!+ P04    "  91ZY:VB6XJWLD   (S (
M&    &-S<&DM,C R-3 U,31X97@Y.60Q+FAT;>U]>W/;MM+W5\&;ICW)#"7K
M?G/:&==V6[^3.#FQ\W:>YS^(A"R>4"3+BV6?3__N B!%W7Q1*(ND-]/:%D4"
M6.QO%WL#^.'_U&KG[I2[IK#87]>?/C++,^.9<"-F!H)'<'5N1U-V[?D^=]DG
M$02VX[#? ]NZ$8PU&W7X#WZT.[7:;Q^@L5/]E.>.6/>HV3EJ-5I=UFR-NHU1
M>\"^?&+OOEV?OL>[I]',@9^"6[]]F(F(,W/*@U!$O[[Y=OU';?#FMP^1'3GB
MMP]'R6]U[]BS[G_[8-FW+(SN'?'KFQD/;FRW%GG^J-WPHV-X\@B^7KGGKC:W
MK6@Z:C8:/Q_[W+)L]Z;FB$DT&M0;P\6EP+Z9XK5!"ZYYH1W90$L@'![9MP+;
MWMSS #J>P=]3(9]O=^%SID-XSD^>FGAN5)OPF>W<C_YU;<]$R"[%G'WU9MS]
MEZ&NP.]0!/;D7\?R[M#^KX"&H$W'=D722;/>:1^K,8PTX>.E3N;JOK'G6/#E
M^=W4'ML1&P[KS0]'8Y@E?\-,F8[@ 3P238]7)VW3;&RFZI0[]CBP@8J_A',K
M(MOD2!%WP]IFLB)Q%]7@H1MW9 +Z1*"NV*X%GR1Q"SH9_M]LJ3_6B5:-PM?'
M&^;@].J+S;X*WPNBD/UAAR9WF(3HE3 ]UV+_CGD O<,M8>Q$X3$[^=]K]N7K
MY^OSTVO)I=_C$#@0ANR+[0MD!CN%7FPW!BY&'KMP46Y"P?YTO#%WG/MTHHLP
M4?9#$R6_&MD1-&X>SZ=V)&JASTTQ\@-1FP?<AQ88^]WC@<7.A.GP $A^"^+?
M9C[,V!5(KTCFS[EG9_:M#6.R/AS9N4Y (J> T,B;J?%G)N4_<1C9D_L'9F4=
M,<E83@*;.T\<2;V["6!C;GZ_";S8M48_3>0_Z.WCY[_//WXTV"<>AG7\=<^:
M'4/"3J(#6\EG/!N[9[_\-&@UF\?LPQ$^D&=_4IX0\W7V[O+DZNSDWR,&5R[>
M&PQ6"SX'J( "<5W@%_,##P$1,&_"0F'&@1W=PUT6 XQ]%[#><#^* 4%PGQ6;
M46@P4(?\!M:2BVMU7^!-0/!  8',PHAN;1, B-]$PIRZGN/=W+/0<V+44?!X
MY%D<>W!A/G!Y"Y1(LXD7L&@JV$1)?Z@$_Q\M^(!8N/<3#\PI:S<5E^KL>HIR
M/H,U$%IT0B_3;#3ED6Q/2090=V8'PHR\(&26$A.+\:1]$ Q+"P;>NA"?4(J/
MS^_YV!'L_\:@6)JZ>R1%?3\%C EH%YZ$+CSH3O=M.A[H'+@\3M23YTJ@M08)
MT/+F_4:LU9-^M@O\<Q>\#;*]H>N7$>\WOWT5J'79B3FUQ:U 0TE!\#/P$-9$
MP/E?<+N#CX2/J/[G3,06)??H1.3'[K6YT+:/5L/=5,5*:P@_WMHAF!L.B/EH
M:EN >!@0JJ)&^SB+DD@"?@Q@%L&O;QIOF"D<1ROY]#,N1,EG38YZHF9ZCL/]
M4(R2/XYW7UZ::_95<[A"9V.93@E0)*#F\'LOCD83^TY8FUB5L:/4R!,610'\
M;R54Z=L&VHR-K.R7N\N19.&M")!^1X],#A*(6%KK74^N])EA:%;HX?[RT[#7
M'QZOCFSYIKQAIRP3UPMFW%D"HKX$RY"VP:RLO09@ZPQ:Q[".!+# ^ [0QV8>
MRFP\2U<#&]8I&'NDEA47IM,$CL%=J+YAD0*)WKY8V*[IQ$@X*/@K8/^4G4P"
MH,J5H 6U/8>;DH5OH1MQ[HZ0[T<2.R0#) ,YR(#R.)@/AL(,R(@EG<S45DL@
M -MHKLRQ6Y #-YJ&TC+L'Z>09V'LHVLD;:2LYX-2PD+[KC:Q;]!( RF( FY&
MA&G"]#XQ?14!;F]  ;O*@ ?( $I5_ &,_*GMARI ]=4SO\]1YY[$P$[YK;3+
M/'@6-+F#R/?8C8Q.!7I%8.+.]T*$\ZW-V5R,;9<'RIP+Q(U:$,#(2TP\T.KP
M )?^@:^=?\(_X7^?^+]PV8D?V(X!\ 3]>X-B, .[Q:[="QZD:E@+ 6=_.%Y@
M6[PVYB'<.17<B:8F5UZU,D(8(980NT?$GDO]B"9S8B1+:'I ,GO;&C+HW4'E
M#!:%R<.IU*SR#_%/;-]R)U6WKL<<#ZUO$<R8)<;1,4SO&'C(P,K!A 4+IP*5
MN(M<5UTF(1I0]8'PX\"<8BBVU38&C8:*H,C8"8:HT# "(PCF!E8.:>^\;0\Z
MT(H7A]C]8[;_ YI_;W&/??GV3_342T>7HJ+5.#Z_6_AI(?QRA*'5J(9CS4*=
M%0#.@-$JM :0 HPB_U'5UOB-MQD(!O/B8!%WNP%3)9 I,,N+41U9]HT-] "R
MX<O FX,PZ'8W^Y328 ^4O;+4NP]4>I8A26H>2_QB L!B_\_&:",[ ^WLW7H&
M.YW:8L+.[X098Y:&?9Y,;!-5OYX-#&;"H@*/R$5DXT3@>!E(CUPXA(N#&8/$
MQ:8)1$YB1_O/.*6:FM2'D)X&?K'1JUCR/[;Z%8^+'Y ;^J M,6L(1J%[@[=[
M:10.[[5U('@NM)^#ZZ CY-(HE1*VCHH)&L#9G: .0\4"*@*_NEZ$E:^2L+)>
M61-V)P%HN%O;E#Y0'P7* (5V$!M91TI'MYDT'F58>>*(.RU]R0-><,-=^[^R
M$2/M !X-?6'J"':V40TKI0EE"^9"$<[XG3T#H5 M2T;$+DR-"!><"P(,:BYF
M3[BW=N"YB*^ZQENI%4'E%=S90ER6U%+J,LDES0ZCP!Y+(-<F'HBG0+,!M=7-
MO19HI?4XKL\ZD0D?,2J6Q=LB0K;-+T(DXU.+=$06>'7VD<>N.54*.1"W6KIX
M<"^?2H0D0)L UVRT?.T)!M8B&,^M"".$)DCVU#:G:!I/.>B4L0!%90&;00='
MSCT@_SOV #>!5* 5#'I+7G:YTA9J@N"7B6.Z!&4(7T=S3^I%% ^M@ATY6FF#
MHRT]!Y=2X <T%L#XP3_G7NR 6A!Z-0AP8NP0U!S>"88W-/P=+#HMSKJA&V[+
MU)A4>:@PI%;Z+N08XPE<!)T8@ 9+V*@F/)W^.KM81"^3]6(YA*E]AH=6' ._
ME5Z&) 1I W4J,V_0)/ B J4CS3-?%H9PT!1NJB1AL;@!?FP*>$H%DPV+HL*#
M2<FZ[S ?TLJ3E(="*F/EM$,SXM8&:PRF3E.1DF4HADNM",-S(Y ;F21;X 2>
M4JA4;)3#!%)AK9%SB%VY;&75"969JF;Q#FA&TQ9!I5<KG.$$'8E>A$6UV6N4
M6XT42SWN+WGW>+U'CBF[%^;A&KG%8FJ>:]Y7E-U8[)#(!Q4.)NW;9KO>3!W1
MK+T=Z)8Q,P\W]=.;GMU5I\Z^I*N8:A0\4M3CTF1_.ZCWTL;1ZM-6J'03#+2)
M90IYL0IO]0I6>\&A#^K=I/&ZUD]72;U$L#)YRJM0\]+)# H^9_M\VZVWTN_6
MC7.D>,U"OW[4=]()-%D@L>2&,.V&\)M R"Q[$N"Z>2C)8:PL 'KVDK%F?!Y-
MM9X, RWH4/HZ$SM*/BD JUB$D*R M2<3/RNC\%17*?R9X6 *[F@*\$E6[P<4
M0B<#[B74]]8EZ<\L.'950>W6S[(.2D8%LCUV^IDODM8E9+<*D1*TQ..;<DN;
M[X!6%O$[,$I=@9."FJ$W:"]"7" /0 9,.)L$WDSVA*:U-(VQP B]!3.2/@+&
MR&0Y5^HT+G5^FB89T<J7XHPBX^!,8;?O&O7F^V0BP40.EJ3HX1+4;,Q7EO?N
MHZIV.R[!:?(=?C^R71F/'CLP%1O$2 VJD?ID&8$:!\LM/D$&GWG[8A+5SVF0
MAN;3 B$,SWO!Z*>&_'><F>+E+W3 O;42@&]LXH2^E"FBUE>R-=2KU=D^>!:U
M,>CE[S4^ 02-N#/G]Z&>P4%;MJ-3"GI6UZJNJ9;[!6NY"ZWV4;4T0+=@"26X
M_C$JGR2R+RLJ']30QI+N7:SRR@!<6$-29;T%)=9[O"-E9>CNI.;>EC@HXT);
M70,"U[$7JI)-EDN,.ZBJ-1FGM=V(RX!XL"G/)4-M<CE=-2APR=^>2T,HMX99
M.T9&G6T7VK9EMD-'P% 88M])@N-K^3=#QJS 2_'FB46=R;<EM,A,06P[5A(0
M1[-!R!A@(B'94*(WF0AT)A+KZB2MQ7/ G+?6PII+W2YR?-9*D@^[XC"42#H'
MH3)^LOF]M#\?3,8[L(,B#-&UF\V%>:2;"L1,<N66VXZ,KP,O]3B4X&<RC3R&
MIP,=N6?<E\D3BXWOMQ6(0\.M1K-9-9VP$?4OJ28>+(Q6VV*:]59WVQ:B/02=
M_@=7 A5YLN_8)W1)DJ 3*V_4:2.CM\5G@.['7;$66&OKOIC42-D0!VBT9K:6
M8,VW3Y(#:80!1\)A2#*< $^EE33[V!:SDDU]7ABC_D++$-OH,S^+6QEF21NI
MW=CDUTJBW\)0E@VJ=F]Q\[(?^; 3VQ\.MCJQ6[S6+6[JBL77[BT6B,3D:W22
M.[9:?BO)E<<F;GE:UHS.[IK1V7UT!,_B78=6FU+F+[:8DBX84 +-Q%,,()\)
ML"&=$N<Q?LC!>%:-8>O!N,_FV<;=PUO*:U;*<*0QKF[]([6UDUO_Q$SWWW7V
M4=QBLGR.>^JG:*9RM*,3AIK(4 ZF2F,$EBVOS^KLW?GU>[VQ4:4K;. ACDI7
MN(3+AKVT+O3>24S)0OMI1C[V+3!Z03&"G6^'D:KQX?#W+2:!Q^!'1$F.%P=B
MR+]D.306KWQ/?*5I%/GAZ.AH/I_7]6,BZ-1!/1W]K3X>?>$WXJ@U;+:.NJT.
M[J9\?*(O7+E+,N9.J/9;SH#BQ3"30<G";;#<A3^%!=U 0]L"TM%G&/;;M6YK
M4&N >0U<&0P&M6ZC!Q][+3DC<:CRQU\XEF+:/I>[^K"Z"98)2XQ@*6L,8*&9
M3Z%+7+ZCA2$OYTA5RWA!G?WA82(#R(:U!VL@L$40KUB5XV ./>DC2A<+V82:
M5]PI"^K91D_A5@2A3@GA70D?)$#&(N.$2 =GR7?!G+RT?^#Q)41 (Z$=B:II
M_3VI^-QV6NYCKV05=]2>C+TXDH@MV'[9_3+MQ(^\,!?69,><QO([8MPX_C%>
MJ>5N']Z1"KTD)P;( P.T.L5#-.:>W"(?JN)-P;'""RWEV+7_ >]/W/E8/:\J
MTRPA,[Y81X:5/C/?4>Z=C%NM'PJ RG@J'#]3("77@<6M6$2DBER5RX"[N=F7
M3&UHDF]/AFAD-H%NFJL-'%E %-#_]>*$G=Z/82C)F0AIK>D^IMZ0U<TP9?_%
MJ<:C"\8BDI%P\)L\5]9(8=$:XK@]/!:3B3"EE6,NC3&,>+#8=1+.5&Q.+DC
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
M.NO^?0D]IVTY(V;%^+IJ?)M0\F)'2B-5(7S^ G9@R82Y;?1ZZU%Q<H,(WI6
M=\L8MM8MJJ*[,4D5=B@=%SPF_I8[L3S.W+$G^&(]^ :/;B=?IK!&XFO<%;&3
M-6GTAKG'X:K.:8)S<>'<'53%-U*9),H@48B<0N0;1+UO=%H-<IU(/$@\-HE'
MSVCTUPV[$KA>*FE$R:(=A'@)P6U L.7%^&*"@XALGGL"#TU8WK+9-YH;XB+D
M=1'&JX/QH=%IY[4 O3ZSC+RU5T9W$4/^AT(^.6*OB>ZJ(;\$/M:#1Y-^M+DD
M-7E'Z=64!V(*WXD@1)J;_6-V_D\,<Y'K\:55ASD52KWV4^8(=!4!70F=F-53
MYG1-MK/0]>2TE-QTHT.XLJ>L=(U&=T!>"4&[>M >&+U!*:OJO@@WM#U7>A6!
MB.Q S' 1\AWN4JJ'3+JBRIO1ZM.Q<H32HJ.TW:A*ND55OKF>6S/)3ZF<,4?;
M)-9W ;4WI$K)5R%X5P+>+:/97W?%2^"O;,I\")WY(&]EUZ*=JI625JMNM-,W
M.MWUHT?(W2&85PSFK?[Z]H%R^DNJ9-I9R=N'^U^]#DUX@6S,@]=OOF# _."T
MEJ(>FX2C.( AX=A+(?=1A ?VP&_+OLUK^([MBMI45:0UZYWV Z#./-GT?^ =
MXW+T\"-IUW0$#Q "4]UYRDT<A 9 H_'S2PBN98>^P^]'MBLG9NQXYO<-A*E!
M):;?$HGCX-FJ8!?-(2=1_9P&R<,+^:B9GN,%HT0(,E.\_(7F?&L%"8U-G-"7
M'#&)1H-Z(W6G:Q+W<&G02B]%GJ\>\OD-3&,@^/>:/&-JQ)TYOP_U# [:LATM
MQ'I6D2<9>,SX72T# BW$V6$DE[+C\+T0;#,/A%(X/+)OQ5JKZ3@'2!O\K6EO
M=_>$ND=$[:$BT?.[*: B8D.P@!=EH \*TO*D;9J-/5&548BF<('EJW51_85&
MW$[S%OUX>O6%75R>UMG)Y1F[^O;[U<79Q<G7B_,KQN2\/#2)4C0?N^GT\^79
M^>75^1G[=GGR[>SB&OZ":U>?/UZ<G>"'JVOX]>G\\OJ*??Z#??YR_O7D^@)N
MR*G_=R<S]2(XVV71U(M#\"U"@XD[4\"T^2)0C@:S>,3?IU! $,@I__4-R@7T
M)9>*5"\H^0+1=[@?BE'R1Y:76*FFV8C@,>$;X-ZRN&4642ULZQHZ2K51 @K%
MZJUK/XB@;J+;K7<?##IFL)YIW(,&)XXW3Q1F\EEB9J1TSQQFX%&=D'[/Q^!M
MQY$X1O7P\HM0YD;X<H<5X4?MRG[O@%S02X[L>(TAKXP1S18QH@",&-1;;6)$
M 1A!JJDPC"#55 A&D&HJ""-(-16&$:2:"L$(4DT%802IIL(P@E13(1@!JHGX
MD!\?GEG'\6B<[^6H'CR#ZKWJX$*3;'H.D.3^^J;[9M<<?:/>&1RTK&FPG*M=
M2TT\EH*YG@9"L!E\,0T9GE-OL9P.Y"!H=#JEAL:5??<0,$@['EX$!JL49X^:
MV'K620KNUJ[@'M;;^R?L1[#[B0?FE+6;9=%EQ$AB)#&2&"D9^: 35U!&DC5P
M>,B^B$'\@QJJQ/9PJ]'JED5[/0L*:[02-G; 1H>P0=@@O?'2V&B5'1N=YQI2
M:Y6E!]\C]& 4B3LB'.6*_T/3F]^N6)DX.S0Y+[_%2Z70BW4FQ8J'1V EL!)8
MJ\]=0C6AFE1P\<%:&JSN8+^_'/=6#G#_$GA6;$85<$Q?<*THW2D#CQ6L%O+
M@('1[>9XF ;AD_"9,SX[>;X9@/!)^,SW).>AT>WU":"O!*!EQ.>@MWX@?MFB
MWRL&]94(;FTSE^/%B^&Z%B@@<^BS(_?CTF^-PQR:W+R/RC2ZPQS??T'243"X
MD'3\B'1TC58G=V^"I*,P<"'I^!'I&!JM[OHIRR0=)!V[) T.36W^PM'<Y95-
M1<A"-%NR W7R>(B%0A2I>)8L5U5PVX>G+>]X1]MH=B@>1RBO.LK[&UX@2"@G
ME%<(Y:V!,6B2+B>4+[L:%0/YT&@,FJ5/T!P(ZQ1A>$UT%[28EH!/P"?@$_ )
M^ 1\ CX!O[I;,7:>AT+G28X?V5I]ZH41\R8J<Y+O%NN*H_@ A9XYA]2*N/6)
M,$>8(\P1Y@ASA+G28JZ8D"M;V'W/&XU?G]]5#']S_Z6K)<N2]8Q!?TC1%$)W
M)='=-3H;:DL)W83N*J"[V36&0]IU0_ N?(1[)W1WC%ZG4ZZ ][YW4[\.0:QJ
MB5T%"TF-1F^]Q(Y 3B"O$,B;QJ!))WD1R"L-\H[1R'\#/X&\S" _/&DY8[QM
M#'JY.!3%R$PL;3XVLZ4T% N@,P;H!([ETRZ''3J!@Z2#I&.3=/2-5HOBR"0=
M)!T;@UP-\(THBTCB0<<W;8J.#8QN8WWQ*'2:YD#P?S4AD8H3683"7L(OX9?P
M2_@E_!)^*\3:UX+?TL*WM-D259'U9^"%(?,#;V+39@YRY2G2M5($T&KD?BP@
M24=AX$+2\6-;I3I]RI*0=)!T;,ZP]_NYEP*3=!0&+I0D^9$D2</H]MN4)*$@
MQVL*<E"0KIJL)?P2?LO,6L(OX;?,K'TM^"TM?,N6),$V'SJG];,O A[! )BX
M\X4;YGU8Z\&)+XZ;7UHWOG GJJ3TY7SZX:&91F EL!)8":P$5@)K\<!:&JP6
M.O:^4K5T[L)U <^ !<Y=BUGB5CB>/Q-N?D5,KT+22BM6APWE[+2GM+>>[R*(
M$D2+!-$6O>F9(%IHB#:-;B?WX[D)I$4&:0DQVMF@2,L6 U\[NM5QH#>#W0A7
M!-R1=C>W9K9KAQ$&PV\%^;U4Y48UH,O[!SIMJI FZ2#IV"P=W29)!TD'2<?F
M_0/=/IW01])!^P<V"D>KFXN+=0!_:NF86F^MDHBB&G38="5/5.\:K0:]&X-
M7G60;WA'$X&<0%XAD#<;1K-)61A">95?CC$T>H/UMQR5-HNCO8XETM5M-4=,
M(MG_"^Y(HD!$85SSP^]K*ET\[T  (L$I%$!(<$APB@P0$AP2'!(<$IQ\MZ 7
M<%J*LVO]90'PM"WJ[QPO#-\SVS6]F<AUFWK%X5[QB$VQXY)/#=.\&PX[[RD4
M2< N"[!WJRAOM2FK1" O#<B?K+V;1KLS(/U-T*YR*FDP7*][*5LBB0(010A
M5)SN@A[N0L GX!/P"?@$? (^ 9^ O\]<2DEQ7^Y<2305@4Z0&,P5$65)*!A1
MBCC;+M$(8#_%VPCB589X9T"[$PCBE8;XL$D)08)XE;,F_7[YM]^LTKKF?%!L
M@6(+%%0CX!/P"?@$? (^ 9^ 3\"G-$H1TR@K)T*_^YC95\+&8N(%(OD4\3LZ
MR:S Y[/3ZW>WER3WATTJ2"X\@E_[:S#Z+<KB%1ZDI&:WJ]E.F_;M%1_!K_Q%
M+KT-+VTK6PYBQ6RG$\#(1Z?@% 6G"/@$? (^ 9^ 3\ GX%,ZHNSIB(LT\\#>
MC84K)G;T/GFI"@482ELB>;#%J[C%E$\.L?4&;0JQE5X"J [^P1A=NTL0+SO$
M2<G_2+J:SL\JOP303I"'='QG_37!E(6AT 2%)B@F1\ GX!/P"?@$? (^ 9^
M3UF8 V5A6AW9P:6(5M\X0D&)78,2;?#<+2\>.^(P48FW>XJT'8"N7 ZK;U"H
MC5!=$E3O5O#<':R'V@CAA/"J(+S=HV.S"-];$B7EAS<H\.9Z/KRTN9)-+ZW?
M1GKVWYH3PG@4!?8XCC@R-_(87)QY+@NG/!!3SP$0A!1OV%N\X>!BMJ_5L8"D
M%M71(7$H#D9(''9?8#N#]6,I231(-%Z]:+0[ZV^Y(\$@P7ANEN;@E.:_9#3[
MY4KJ'#!+6WDBZ1":8F=;";^$7\)O55E+^"7\EIFUKP6_I85O:7,M:E_*>N;$
M%\%2MH35V)B'MDE./CGY%8U^/3E/TJ@W\C\KF.2A." A>=@UZM6H-WLD&209
M)!GKDM'(O0:-)*,X<*%$29Y+1J'S)"O.T]_RQ8["8AR&R&^$<IA"YL51&'$7
M1\)0$)K-XYQ]J-<A[(?&^](L[/58IO(+\]!H=^@-%03SRL.\T6\0S GF58=Y
MJYU[V2/!O-0P+P!M.:-\8 Q[NU1J/3991<CSK,Y!YL:F_WJ/'#O,-!3N6(Y#
M3,/!CJ<IUC204)!0D%"04)!0D%"04)!0%/V0L[W,0IFR/$\JD;-L)XZ$1;&2
M\L9*7L<A.H>M=2-8$ZP+$_[;1\D: 9P 7B" YU]Y1@ O*\ +0%;^"KQ"AY\]
MO:;,!8]$NR+Y>QZ%<C&IM'1_)0L%I+<,-6DD'\7!"\G'#\I'IYO[VS1)/HJ#
M%Y*/'Y2/7I.V[I!\T/Z=;>95;\L&GB-Y\#+\MNS;XJ!8#@9^),^9CN !LG.J
M&T]Y@YUH\#8:/[^$)%IVZ#O\?F2[CNV*VMCQS.\;4FIJ4 E@ET@<!\^>E9TG
M4?V<!LG#"[373,_Q@E$"Z<P4+W\QE7[N" _\E@3KSXD0J)>C#NJ-81)RJDG(
MPJ5!>EA(#3QYQ2L?/.7:.!#\>XU/(A&,^*UG6XD\MF4S6OST#.+\'XT]ZQY^
M3:.9\]O_!U!+ 0(4 Q0    ( !E'KEJ"&VG\VP,  )(/   1
M  "  0    !C<W!I+3(P,C4P-3$T+GAS9%!+ 0(4 Q0    ( !E'KEIU^)_>
MVP(  .L*   5              "  0H$  !C<W!I+3(P,C4P-3$T7V1E9BYX
M;6Q02P$"% ,4    "  91ZY:":8+5<T%  !S0P  %0              @ $8
M!P  8W-P:2TR,#(U,#4Q-%]L86(N>&UL4$L! A0#%     @ &4>N6D*2N$*3
M!   9RP  !4              ( !& T  &-S<&DM,C R-3 U,31?<')E+GAM
M;%!+ 0(4 Q0    ( !E'KEJR;_L#=!,  -Y[   4              "  =X1
M  !C<W!I+3(P,C4P-3$T>#AK+FAT;5!+ 0(4 Q0    ( !E'KEK:);BK>R0
M  C, @ 8              "  80E  !C<W!I+3(P,C4P-3$T>&5X.3ED,2YH
8=&U02P4&      8 !@"0 0  -4H

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<FILENAME>cspi-20250514x8k_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="cspi-20250514.xsd" xlink:type="simple"/>
    <context id="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000356037</identifier>
        </entity>
        <period>
            <startDate>2025-05-14</startDate>
            <endDate>2025-05-14</endDate>
        </period>
    </context>
    <dei:EntityCentralIndexKey
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Tc__t8QpAuL1kyz8spHmUFFMw_2_1">0000356037</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Tc_2zktE7dy90CVIOOC-ZoIRQ_3_1">false</dei:AmendmentFlag>
    <dei:DocumentType
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Narr_ZwNAwsyrxUiJWcGt61NF6A">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Narr_TrHni_8pYEmxv9I4xsp8DA">2025-05-14</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Narr_TyGjX-IISka0yw2mjycFzg">CSP Inc.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Narr_2iDOkO1ZvEeGae7iSdzz2w">MA</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Tc_IWf9lU7CVE60t8o8ufdlDw_1_0">000-10843</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Tc_kmGUYG0cDkmk5yKjtg_sdg_1_1">04-2441294</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Narr_8A6rXiZUckO4B2CwT4PkMw">175 Cabot Street</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Narr_iK28H9gsq0KeC_pyIb4khw">Suite 210</dei:EntityAddressAddressLine2>
    <dei:EntityAddressCityOrTown
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Narr_gmu_PNsH3UO--qxvSRVuxg">Lowell</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Narr_aOEXEkkFkka0G3qJnKDXNg">MA</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Tc_ejp_Lt5H20CG9m2ly5IIHg_1_1">01854</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Narr_gu3Qlhj_VEKyqmTJFWrTrQ">978</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Narr_RPRoxUMNIECuK7okswgC5w">954-5038</dei:LocalPhoneNumber>
    <dei:WrittenCommunications
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Narr_7Q1QyBC-bEm8gRsJom2Bkg">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Narr_NYqCJGYW20-sv5wPdQMn_g">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Narr_lUYfB4rAsEehxJZltuId_A">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Narr_Q-sH-TV-GEGCnRieCXYwVg">false</dei:PreCommencementIssuerTenderOffer>
    <dei:EntityEmergingGrowthCompany
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Narr_brzwQab0XUuQ4eTsanPU3Q">false</dei:EntityEmergingGrowthCompany>
    <dei:Security12bTitle
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Tc_GLgOFecbF0KxevE5-e1dNw_4_0">Common Stock, par value $0.01 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Tc_4Z-0zhAtFUqH1eQhQVyEwg_4_1">CSPI</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="Duration_5_14_2025_To_5_14_2025_ELdQZCIL4kGsXuXl7Dq3sQ"
      id="Tc_BU9c2PrSwUCWMRpCO6OzUg_4_2">NASDAQ</dei:SecurityExchangeName>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
