<SEC-DOCUMENT>0001104659-25-014333.txt : 20250214
<SEC-HEADER>0001104659-25-014333.hdr.sgml : 20250214
<ACCEPTANCE-DATETIME>20250214173027
ACCESSION NUMBER:		0001104659-25-014333
CONFORMED SUBMISSION TYPE:	8-K
PUBLIC DOCUMENT COUNT:		14
CONFORMED PERIOD OF REPORT:	20250214
ITEM INFORMATION:		Departure of Directors or Certain Officers; Election of Directors; Appointment of Certain Officers: Compensatory Arrangements of Certain Officers
ITEM INFORMATION:		Regulation FD Disclosure
ITEM INFORMATION:		Financial Statements and Exhibits
FILED AS OF DATE:		20250214
DATE AS OF CHANGE:		20250214

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			TECHPRECISION CORP
		CENTRAL INDEX KEY:			0001328792
		STANDARD INDUSTRIAL CLASSIFICATION:	FABRICATED STRUCTURAL METAL PRODUCTS [3440]
		ORGANIZATION NAME:           	04 Manufacturing
		IRS NUMBER:				000000000
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			0331

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

	BUSINESS ADDRESS:	
		STREET 1:		1 BELLA DRIVE
		CITY:			WESTMINSTER
		STATE:			MA
		ZIP:			01473
		BUSINESS PHONE:		978-874-0591

	MAIL ADDRESS:	
		STREET 1:		1 BELLA DRIVE
		CITY:			WESTMINSTER
		STATE:			MA
		ZIP:			01473

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	Techprecision CORP
		DATE OF NAME CHANGE:	20060309

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	LOUNSBERRY HOLDINGS II INC
		DATE OF NAME CHANGE:	20050531
</SEC-HEADER>
<DOCUMENT>
<TYPE>8-K
<SEQUENCE>1
<FILENAME>tm256769d1_8k.htm
<DESCRIPTION>FORM 8-K
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:dei="http://xbrl.sec.gov/dei/2023" xmlns:us-gaap="http://fasb.org/us-gaap/2023" xmlns:us-roles="http://fasb.org/us-roles/2023" xmlns:country="http://xbrl.sec.gov/country/2023" xmlns:srt="http://fasb.org/srt/2023" xmlns:tpcs="http://tech.pre.com/20250214">
<head>
     <title></title>
<meta http-equiv="Content-Type" content="text/html"/>
</head>
<!-- Field: Set; Name: xdx; ID: xdx_02C_US%2DGAAP%2D2023 -->
<!-- Field: Set; Name: xdx; ID: xdx_032_tpcs_tech.pre.com_20250214 -->
<!-- Field: Set; Name: xdx; ID: xdx_042_20250214_20250214 -->
<!-- Field: Set; Name: xdx; ID: xdx_059_edei%2D%2DAmendmentFlag_false -->
<!-- Field: Set; Name: xdx; ID: xdx_059_edei%2D%2DEntityCentralIndexKey_0001328792 -->
<!-- Field: Set; Name: xdx; ID: xdx_06B_USD_1_iso4217%2D%2DUSD -->
<!-- Field: Set; Name: xdx; ID: xdx_062_Shares_2_xbrli%2D%2Dshares -->
<!-- Field: Set; Name: xdx; ID: xdx_06D_USDPShares_3_iso4217%2D%2DUSD_xbrli%2D%2Dshares -->
<body style="font: 10pt Times New Roman, Times, Serif">
<div style="display: none">
<ix:header>
 <ix:hidden>
  <ix:nonNumeric contextRef="AsOf2025-02-14" id="Fact000003" name="dei:AmendmentFlag">false</ix:nonNumeric>
  <ix:nonNumeric contextRef="AsOf2025-02-14" id="Fact000004" name="dei:EntityCentralIndexKey">0001328792</ix:nonNumeric>
  </ix:hidden>
 <ix:references>
  <link:schemaRef xlink:href="tpcs-20250214.xsd" xlink:type="simple"/>
  </ix:references>
 <ix:resources>
    <xbrli:context id="AsOf2025-02-14">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001328792</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-02-14</xbrli:startDate>
        <xbrli:endDate>2025-02-14</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:unit id="USD">
      <xbrli:measure>iso4217:USD</xbrli:measure>
    </xbrli:unit>
    <xbrli:unit id="Shares">
      <xbrli:measure>xbrli:shares</xbrli:measure>
    </xbrli:unit>
    <xbrli:unit id="USDPShares">
      <xbrli:divide>
        <xbrli:unitNumerator>
          <xbrli:measure>iso4217:USD</xbrli:measure>
        </xbrli:unitNumerator>
        <xbrli:unitDenominator>
          <xbrli:measure>xbrli:shares</xbrli:measure>
        </xbrli:unitDenominator>
      </xbrli:divide>
    </xbrli:unit>
  </ix:resources>
 </ix:header>
</div>


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

<!-- Field: Rule-Page --><div style="margin-top: 12pt; margin-bottom: 3pt; width: 100%"><div style="border-top: Black 2pt solid; border-bottom: Black 1pt solid; font-size: 1pt">&#160;</div></div><!-- Field: /Rule-Page -->

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

<p style="font: 12pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>UNITED STATES</b></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="text-transform: uppercase">W</span><span style="text-transform: lowercase">ashington</span><span style="text-transform: uppercase">,
DC 20549</span></p>

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

<p style="font: 12pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>FORM <span id="xdx_904_edei--DocumentType_c20250214__20250214_zb1ek4khGzz"><ix:nonNumeric contextRef="AsOf2025-02-14" id="Fact000009" name="dei:DocumentType">8-K</ix:nonNumeric></span></b></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>CURRENT REPORT</b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>Pursuant to Section 13 OR 15(d) of the Securities
and Exchange Act of 1934</b></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">Date of Report (Date of earliest event reported):<b>
<span id="xdx_900_edei--DocumentPeriodEndDate_c20250214__20250214_zJReaPApIfD5"><ix:nonNumeric contextRef="AsOf2025-02-14" format="ixt:datemonthdayyearen" id="Fact000010" name="dei:DocumentPeriodEndDate">February 14, 2025</ix:nonNumeric></span></b></p>

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

<p style="font: 14pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span id="xdx_905_edei--EntityRegistrantName_c20250214__20250214_z4bmnHKUYPsk"><b><ix:nonNumeric contextRef="AsOf2025-02-14" id="Fact000011" name="dei:EntityRegistrantName">TECHPRECISION
CORPORATION</ix:nonNumeric></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">(Exact Name of Registrant as Specified in Charter)</p>

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

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="vertical-align: top">
    <td style="border-bottom: black 1pt solid; width: 32%; text-align: center"><b><span id="xdx_90C_edei--EntityIncorporationStateCountryCode_c20250214__20250214_zXIpldclCAUk"><ix:nonNumeric contextRef="AsOf2025-02-14" format="ixt-sec:stateprovnameen" id="Fact000012" name="dei:EntityIncorporationStateCountryCode">Delaware</ix:nonNumeric></span></b></td>
    <td style="width: 2%"><span style="font-style: normal; font-weight: normal">&#160;</span></td>
    <td style="border-bottom: black 1pt solid; width: 32%; text-align: center"><span id="xdx_903_edei--EntityFileNumber_c20250214__20250214_zejz0dT5obgc"><b><ix:nonNumeric contextRef="AsOf2025-02-14" id="Fact000013" name="dei:EntityFileNumber">001-41698</ix:nonNumeric></b></span></td>
    <td style="width: 2%"><span style="font-style: normal; font-weight: normal">&#160;</span></td>
    <td style="border-bottom: black 1pt solid; width: 32%; text-align: center"><span id="xdx_901_edei--EntityTaxIdentificationNumber_c20250214__20250214_zGiYLIy8DRzh"><b><ix:nonNumeric contextRef="AsOf2025-02-14" id="Fact000014" name="dei:EntityTaxIdentificationNumber">51-0539828</ix:nonNumeric></b></span></td></tr>
  <tr style="vertical-align: top">
    <td><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">(State or Other Jurisdiction</p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">of Incorporation or Organization)</p></td>
    <td>&#160;</td>
    <td style="text-align: center">(Commission File Number)</td>
    <td>&#160;</td>
    <td style="text-align: center">(IRS Employer Identification No.)</td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><b>&#160;</b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span id="xdx_908_edei--EntityAddressAddressLine1_c20250214__20250214_ztNZeAbzDObk"><b><ix:nonNumeric contextRef="AsOf2025-02-14" id="Fact000015" name="dei:EntityAddressAddressLine1">1
Bella Drive</ix:nonNumeric></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span id="xdx_904_edei--EntityAddressCityOrTown_c20250214__20250214_zu1KKxgX2ZB7"><b><ix:nonNumeric contextRef="AsOf2025-02-14" id="Fact000016" name="dei:EntityAddressCityOrTown">Westminster</ix:nonNumeric></b></span><b>,
<span id="xdx_905_edei--EntityAddressStateOrProvince_c20250214__20250214_ztdJRlYEcFFj"><ix:nonNumeric contextRef="AsOf2025-02-14" id="Fact000017" name="dei:EntityAddressStateOrProvince">MA</ix:nonNumeric></span></b><b> <span id="xdx_905_edei--EntityAddressPostalZipCode_c20250214__20250214_zVA8Da38hpfd"><ix:nonNumeric contextRef="AsOf2025-02-14" id="Fact000018" name="dei:EntityAddressPostalZipCode">01473</ix:nonNumeric></span></b></p>

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">Registrant's telephone number, including area
code: <b>(<span id="xdx_90C_edei--CityAreaCode_c20250214__20250214_zCxjGiQR7m93"><ix:nonNumeric contextRef="AsOf2025-02-14" id="Fact000019" name="dei:CityAreaCode">978</ix:nonNumeric></span></b><b>) <span id="xdx_907_edei--LocalPhoneNumber_c20250214__20250214_zDVDHsObiKza"><ix:nonNumeric contextRef="AsOf2025-02-14" id="Fact000020" name="dei:LocalPhoneNumber">874-0591</ix:nonNumeric></span></b></p>

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

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

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

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr>
    <td style="border-bottom: Black 1pt solid; padding-bottom: 1pt; vertical-align: bottom; width: 36%; padding-left: 0.1in; text-align: center; text-indent: -0.1in"><b>Title&#160;of&#160;each&#160;class</b></td>
    <td style="border-bottom: Black 1pt solid; vertical-align: bottom; width: 32%; text-align: center"><b>Trading Symbol(s)</b></td>
    <td style="border-bottom: Black 1pt solid; vertical-align: bottom; width: 32%; text-align: center"><b>Name&#160;of each<br/>
    exchange&#160;on&#160;which&#160;registered</b></td></tr>

<tr style="vertical-align: top">
    <td style="padding-right: 1.45pt; padding-left: 1.45pt; text-align: center"><span id="xdx_90C_edei--Security12bTitle_c20250214__20250214_zsHsaC4CLEYc"><ix:nonNumeric contextRef="AsOf2025-02-14" id="Fact000021" name="dei:Security12bTitle">Common
    Stock, par value $0.0001 per share</ix:nonNumeric></span></td>
    <td style="padding-right: 1.45pt; padding-left: 1.45pt; text-align: center"><span id="xdx_907_edei--TradingSymbol_c20250214__20250214_zMOWq05PIHVc" style="font-size: 10pt"><ix:nonNumeric contextRef="AsOf2025-02-14" id="Fact000022" name="dei:TradingSymbol">TPCS</ix:nonNumeric></span></td>
    <td style="padding-right: 1.45pt; padding-left: 1.45pt; text-align: center"><span id="xdx_905_edei--SecurityExchangeName_c20250214__20250214_zoWXf3T96GYc" style="font-size: 10pt"><ix:nonNumeric contextRef="AsOf2025-02-14" format="ixt-sec:exchnameen" id="Fact000023" name="dei:SecurityExchangeName">Nasdaq</ix:nonNumeric>
    </span><span style="font-size: 10pt">Capital Market</span></td></tr>
</table>


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

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

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="vertical-align: top">
    <td style="width: 0.5in; text-align: justify"><span id="xdx_901_edei--WrittenCommunications_c20250214__20250214_zZXYwyNl7VK5" style="font-family: Wingdings"><ix:nonNumeric contextRef="AsOf2025-02-14" format="ixt:booleanfalse" id="Fact000024" name="dei:WrittenCommunications">&#168;</ix:nonNumeric></span></td>
    <td style="text-align: justify"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Written communications pursuant
                                    to Rule 425 under the Securities Act (17 CFR 230.425)</p></td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td></tr>
  <tr style="vertical-align: top">
    <td style="text-align: justify"><span id="xdx_902_edei--SolicitingMaterial_c20250214__20250214_z0YeqGUtUzB9" style="font-family: Wingdings"><ix:nonNumeric contextRef="AsOf2025-02-14" format="ixt:booleanfalse" id="Fact000025" name="dei:SolicitingMaterial">&#168;</ix:nonNumeric></span></td>
    <td style="text-align: justify"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Soliciting material pursuant to
                                    Rule 14a-12 under the Exchange Act (17 CFR 240.14a-12)</p></td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td></tr>
  <tr style="vertical-align: top">
    <td style="text-align: justify"><span id="xdx_903_edei--PreCommencementTenderOffer_c20250214__20250214_zNFPyaMsrLmd" style="font-family: Wingdings"><ix:nonNumeric contextRef="AsOf2025-02-14" format="ixt:booleanfalse" id="Fact000026" name="dei:PreCommencementTenderOffer">&#168;</ix:nonNumeric></span></td>
    <td style="text-align: justify"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Pre-commencement communications
                                    pursuant to Rule 14d-2(b) under the Exchange Act (17 CFR 240.14d-2(b))</p></td></tr>
  <tr style="vertical-align: top">
    <td>&#160;</td>
    <td>&#160;</td></tr>
  <tr style="vertical-align: top">
    <td style="text-align: justify"><span id="xdx_90C_edei--PreCommencementIssuerTenderOffer_c20250214__20250214_zJJ3wW9z3991" style="font-family: Wingdings"><ix:nonNumeric contextRef="AsOf2025-02-14" format="ixt:booleanfalse" id="Fact000027" name="dei:PreCommencementIssuerTenderOffer">&#168;</ix:nonNumeric></span></td>
    <td style="text-align: justify"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Pre-commencement communications
                                    pursuant to Rule 13e-4(c) under the Exchange Act (17 CFR 240.13e-4(c))</p></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.5in">Emerging growth company <span id="xdx_904_edei--EntityEmergingGrowthCompany_c20250214__20250214_z6RoeU2Jqogk" style="font-family: Wingdings"><ix:nonNumeric contextRef="AsOf2025-02-14" format="ixt:booleanfalse" id="Fact000028" name="dei:EntityEmergingGrowthCompany">&#168;</ix:nonNumeric></span></p>

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-right: 0; margin-bottom: 0pt"></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">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 style="font-family: Times New Roman, Times, Serif">&#9744;</span></p>

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

<!-- Field: Rule-Page --><div style="margin-top: 3pt; margin-bottom: 12pt; width: 100%"><div style="border-top: Black 1pt solid; border-bottom: Black 2pt solid; font-size: 1pt">&#160;</div></div><!-- Field: /Rule-Page -->

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

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

<!-- Field: Page; Sequence: 1 -->
    <div style="border-bottom: Black 1pt solid; margin-top: 12pt; margin-bottom: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <div style="break-before: page; margin-top: 6pt; margin-bottom: 12pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top">
<td style="width: 10%"><b>Item 5.02</b></td><td style="width: 90%"><b>Departure of Directors or Certain Officers; Election of Directors; Appointment of Certain Officers; Compensatory Arrangements of
Certain Officers.</b></td></tr></table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">As previously reported, Richard Roomberg resigned
as Chief Financial Officer of TechPrecision Corporation (the &#8220;<b>Company</b>&#8221;), effective on February&#160;14, 2025 (the &#8220;<b>Transition
Date</b>&#8221;).</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">On February&#160;14, 2025, the Board of Directors
of the Company, appointed Alexander Shen, the Company&#8217;s Chief Executive Officer to serve as the interim principal financial officer
and principal accounting officer of&#160;the Company, effective at 5:30 p.m.&#160; on the Transition Date, while the Company searches
for a replacement for Mr.&#160;Roomberg.</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">Information regarding Mr.&#160;Shen&#8217;s background
and business experience, contracts between the Company and Mr.&#160;Shen and any related party transactions involving Mr.&#160;Shen is
incorporated by reference herein from the Company&#8217;s definitive proxy statement on Schedule 14A filed with the Securities and Exchange
Commission on November&#160;26, 2024. Mr.&#160;Shen will not receive any additional compensation in connection with his service as interim
principal financial officer and principal accounting officer.</p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top">
<td style="width: 10%"><b>Item 7.01</b></td><td style="width: 90%"><b>Regulation FD Disclosure.</b></td></tr></table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">On February&#160;14, 2025, the Company issued a
press release regarding Mr.&#160;Shen&#8217;s appointment described in Item 5.02 above and the filing of its Quarterly Report on Form&#160;10-Q
for the quarter ended December&#160;31, 2024. A copy of the press release is attached hereto as Exhibit&#160;99.1.</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">The information presented in Item 7.01 of this
Current Report on Form&#160;8-K and the accompanying press release shall not be deemed to be &#8220;filed&#8221; for purposes of Section&#160;18
of the Securities Exchange Act of 1934, as amended (the &#8220;<b>Exchange Act</b>&#8221;), or otherwise subject to the liabilities of
that section, unless the Company specifically states that the information is to be considered &#8220;filed&#8221; under the Exchange Act
or specifically incorporates it by reference into a filing under the Securities Act of 193, as amended, or the Exchange Act.</p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; margin-top: 0pt; margin-bottom: 0pt"><tr style="vertical-align: top">
<td style="width: 10%"><b>Item 9.01</b></td><td style="width: 90%"><b>Financial Statements and Exhibits.</b></td></tr></table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in">(d)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<span style="text-decoration: underline">Exhibits</span></p>

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

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: black 1pt solid; width: 10%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Exhibit<br/>
Number</b></span></td>
    <td style="width: 2%">&#160;</td>
    <td style="border-bottom: black 1pt solid; width: 88%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Description</b></span></td></tr>
  <tr style="vertical-align: top">
    <td><a href="tm256769d1_ex99-1.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">99.1</span></a></td>
    <td>&#160;</td>
    <td><a href="tm256769d1_ex99-1.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Press Release dated February&#160;14, 2025</span></a></td></tr>
  <tr style="vertical-align: top">
    <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">104</span></td>
    <td>&#160;</td>
    <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Cover Page&#160;Interactive Data File (the cover page&#160;XBRL tags are embedded within the inline XBRL document)</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">&#160;</p>

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

<!-- Field: Page; Sequence: 2 -->
    <div style="border-bottom: Black 1pt solid; margin-top: 12pt; margin-bottom: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <div style="break-before: page; margin-top: 6pt; margin-bottom: 12pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><b>SIGNATURES</b></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"></p><table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
<tr style="vertical-align: top; background-color: white"><td>&#160;</td>
    <td colspan="2"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>TECHPRECISION CORPORATION</b></span></td></tr>
  <tr style="vertical-align: top; background-color: white">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td></tr>
  <tr style="vertical-align: top; background-color: white">
    <td style="width: 50%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Date: February 14, 2025</span></td>
    <td style="width: 5%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">By:</span></td>
    <td style="border-bottom: black 1pt solid; width: 45%">/s/ Alexander Shen</td></tr>
  <tr style="vertical-align: top; background-color: white">
    <td>&#160;</td>
    <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Name:</span></td>
    <td>Alexander Shen</td></tr>
  <tr style="vertical-align: top; background-color: white">
    <td>&#160;</td>
    <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Title:</span></td>
    <td>Chief Executive Officer</td></tr>
  </table>

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

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

<!-- Field: Page; Sequence: 3; Options: Last -->
    <div style="border-bottom: Black 1pt solid; margin-top: 12pt; margin-bottom: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

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

<!-- Field: Set; Name: xdx; ID: xdx_08B_extensions -->
<!-- eJxFjdEKgkAQRb/Afxj2OVKXLPIxqYgsRCJ6XXKKJd2R2c3qk/rLNiUaBobh3nOvECOxppWukeG0KHM4YNPWyiGUeEFGc0bvyDbbFPwt8aqtY2Vc//7AjDyDnknGUp690Fs7bbFKIZqF8TyUE4jiNJlCsRPBV8/IXHSFxmlVgzIVFEwta3SKX0PCQT3JUPPqq47IVpNJIR5Hg/wGGcUS9tSpB/HNQp5nIhj1E4g10731ruXTofmSsKyx8XV2oP8bfAAND0qX -->
</body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-99.1
<SEQUENCE>2
<FILENAME>tm256769d1_ex99-1.htm
<DESCRIPTION>EXHIBIT 99.1
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

<P STYLE="margin: 0">&nbsp;</P>

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

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

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

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="vertical-align: top">
    <TD STYLE="width: 50%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>Company Contact:</B></FONT></TD>
    <TD STYLE="width: 50%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>Investor Relations Contact:</B></FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Alexander Shen</FONT></TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Hayden IR</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Chief Executive Officer</FONT></TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Brett Maas</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">TechPrecision Corporation</FONT></TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Phone: 646-536-7331</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Phone: 978-883-5108</FONT></TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Email: <U>brett@haydenir.com</U></FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Email: <U>shena@ranor.com</U></FONT></TD>
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Website: <U>www.haydenir.com</U></FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Website: <U>www.techprecision.com</U></FONT></TD>
    <TD>&nbsp;</TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><B><I>FOR IMMEDIATE RELEASE</I></B></P>

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>TechPrecision Corporation Announces Appointment
of Interim Principal Financial Officer and Addresses Late Filing for FY25 Q3</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><B>Westminster,
MA</B> &ndash; February 14, 2025 &ndash; TechPrecision Corporation&nbsp;(NASDAQ:TPCS) (&ldquo;TechPrecision&rdquo; or &ldquo;the Company&rdquo;),
today announced that the Board of Directors of the Company, appointed Alexander Shen, the Company&rsquo;s Chief Executive Officer, to
serve as the interim principal financial officer and principal accounting officer of&nbsp;the Company, effective at 5:30 p.m. February
14, 2025, after the previously disclosed resignation of Richard Roomberg, the Company&rsquo;s former Chief Financial Officer, took effect.
Mr. Shen will serve in these capacities while the Company searches for a replacement for Mr. Roomberg.<BR>
&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">The company has reported separately in Form 12b-25 that it is unable
to file its Quarterly Report on Form 10-Q (the &ldquo;<B>Form 10-Q</B>&rdquo;) for the period ended December 31, 2024 within the prescribed
time period.</P>

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Alexander Shen stated, &ldquo;For FY25 Q3, ending December 31, 2024,
the company is targeting Friday, Mar 7, 2025 to file. Filing on March 7, 2025 will result in 21 days late. The table below shows the last
12 months filing trend and the days late.&rdquo;</P>

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

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR>
    <TD STYLE="width: 11%; border: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>Fiscal <BR>
year</B></FONT></TD>
    <TD STYLE="width: 11%; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>Fiscal <BR>
qtr</B></FONT></TD>
    <TD STYLE="width: 13%; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>Quarter <BR>
end</B></FONT></TD>
    <TD STYLE="white-space: nowrap; width: 11%; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>Filing</B></FONT></TD>
    <TD STYLE="width: 23%; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>SEC <BR>
due date</B></FONT></TD>
    <TD STYLE="width: 20%; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>Actual <BR>
filing date</B></FONT></TD>
    <TD STYLE="width: 11%; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>Days late</B></FONT></TD></TR>
  <TR STYLE="vertical-align: bottom">
    <TD STYLE="white-space: nowrap; border-right: Black 1pt solid; border-bottom: Black 1pt solid; border-left: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">FY24</FONT></TD>
    <TD STYLE="white-space: nowrap; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Q3</FONT></TD>
    <TD STYLE="white-space: nowrap; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">12/31/2023</FONT></TD>
    <TD STYLE="white-space: nowrap; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">10-Q</FONT></TD>
    <TD STYLE="white-space: nowrap; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Wed, 02/14/2024</FONT></TD>
    <TD STYLE="white-space: nowrap; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Fri, 03/01/2024</FONT></TD>
    <TD STYLE="white-space: nowrap; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">-16</FONT></TD></TR>
  <TR STYLE="vertical-align: bottom">
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD></TR>
  <TR STYLE="vertical-align: bottom">
    <TD STYLE="white-space: nowrap; border: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">FY24</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Year</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">03/31/2024</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">10-K</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Mon, 07/01/2024</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Fri, 09/13/2024</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">-74</FONT></TD></TR>
  <TR STYLE="vertical-align: bottom">
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD></TR>
  <TR STYLE="vertical-align: bottom">
    <TD STYLE="white-space: nowrap; border: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">FY25</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Q1</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">06/30/2024</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">10-Q</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Wed, 08/14/2024</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Thu, 11/07/2024</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">-85</FONT></TD></TR>
  <TR STYLE="vertical-align: bottom">
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD></TR>
  <TR STYLE="vertical-align: bottom">
    <TD STYLE="white-space: nowrap; border: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">FY25</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Q2</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">09/30/2024</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">10-Q</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Thu, 11/14/2024</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Tue, 01/21/2025</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">-68</FONT></TD></TR>
  <TR STYLE="vertical-align: bottom">
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD></TR>
  <TR STYLE="vertical-align: bottom">
    <TD STYLE="white-space: nowrap; border: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">FY25</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Q3</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">12/31/2024</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">10-Q</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Fri, 02/14/2025</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-left: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Fri, 03/07/2025</FONT></TD>
    <TD STYLE="white-space: nowrap; border-top: Black 1pt solid; border-right: Black 1pt solid; border-bottom: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">-21</FONT></TD></TR>
  <TR STYLE="vertical-align: bottom">
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; border-right: Black 1pt solid; border-bottom: Black 1pt solid; border-left: Black 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; font-size: 10pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">[TARGET]</FONT></TD>
    <TD STYLE="white-space: nowrap; padding-right: 5.4pt; padding-left: 5.4pt">&nbsp;</TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&ldquo;Resource drain from acquisition activity is the single major
contributor to TechPrecision's late SEC filings. Timely reporting is one of our fundamentals; we have been taking steps to achieve and
consistently maintain compliance to this requirement.&rdquo;</P>

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

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

<!-- Field: Page; Sequence: 1 -->
    <DIV STYLE="margin-top: 12pt; margin-bottom: 6pt; border-bottom: Black 1pt solid"><P STYLE="margin: 0pt">&nbsp;</P></DIV>
    <DIV STYLE="break-before: page; margin-top: 6pt; margin-bottom: 12pt"><P STYLE="margin: 0pt">&nbsp;</P></DIV>
    <!-- Field: /Page -->

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><B>About TechPrecision Corporation</B></P>

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">TechPrecision Corporation, through its wholly owned subsidiaries, Ranor,&nbsp;Inc.
and Stadco. The manufacturing operations of our Ranor subsidiary are situated on approximately 65 acres in North Central Massachusetts.
Leveraging our 145,000 square foot facilities, Ranor provides a full range of custom solutions to transform material into precision finished
welded components and precision finished machined components up to 100 tons: manufacturing engineering, materials management and traceability,
high-precision heavy fabrication (in-house fabrication operations include cutting, press and roll forming, welding, heat treating, assembly,
blasting and painting), heavy high-precision machining (in-house machining operations include CNC programming, finishing, and assembly),
QC inspection including portable CMM, NonDestructive Testing, and final packaging.</P>

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">All manufacturing at Ranor is performed in accordance with customer
requirements. Ranor is an ISO 9001:2015 certificate holder. Ranor is a US defense-centric company with over 95% of its revenue in the
defense sector. Ranor is registered and compliant with ITAR.</P>

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">The manufacturing operations of our Stadco subsidiary are situated
in an industrial self-contained multi-building complex comprised of approximately 183,000 square feet under roof in Los Angeles, California.
Stadco manufactures large mission-critical components on several high-profile military aircraft, military helicopter, and military space
programs. Stadco has been a critical supplier to a blue-chip customer base that includes some of the largest OEMs and prime contractors
in the defense and aerospace industries. Stadco also manufactures tooling, molds, fixtures, jigs and dies used in the production of defense-centric
aircraft components.</P>

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Our Stadco subsidiary, similar to Ranor, provides a full range of custom
solutions: manufacturing engineering, materials management and traceability, high-precision fabrication (in-house fabrication operations
include waterjet cutting, press forming, welding, and assembly) and high-precision machining (in-house machining operations include CNC
programming, finishing, and assembly), QC inspection including both fixed and portable CMM NonDestructive Testing, and final packaging.
In addition, Stadco features a large electron beam welding cell, and two NonDestructive Testing work cells, a unique mission-critical
technology set.</P>

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

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

<!-- Field: Page; Sequence: 2 -->
    <DIV STYLE="margin-top: 12pt; margin-bottom: 6pt; border-bottom: Black 1pt solid"><P STYLE="margin: 0pt">&nbsp;</P></DIV>
    <DIV STYLE="break-before: page; margin-top: 6pt; margin-bottom: 12pt"><P STYLE="margin: 0pt">&nbsp;</P></DIV>
    <!-- Field: /Page -->

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">All manufacturing at Stadco is performed in accordance with customer
requirements. Stadco is an AS 9100 D and ISO 9001:2015 certificate holder and a NADCAP NonDestructive Testing certificate holder. Stadco
is a US defense-centric company with over 60% of its revenue in the defense sector. Stadco is registered and compliant with ITAR.</P>

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">To learn more about the Company, please visit the corporate website
at&nbsp;<U>http://www.techprecision.com</U>. Information on the Company&rsquo;s website or any other website does not constitute a part
of this press release.</P>

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><B>Safe Harbor Statement</B></P>

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><I>This
release contains certain &ldquo;forward-looking statements&rdquo; relating to the business of the Company and its subsidiary companies.
All statements other than statements of current or historical fact contained in this press release, including statements that express
our intentions, plans, objectives, beliefs, expectations, strategies, predictions or any other statements relating to our future activities
or other future events or conditions are forward-looking statements. The words &ldquo;anticipate,&rdquo; &ldquo;believe,&rdquo; &ldquo;continue,&rdquo;
&ldquo;could,&rdquo; &ldquo;estimate,&rdquo; &ldquo;expect,&rdquo; &ldquo;intend,&rdquo; &ldquo;may,&rdquo; &ldquo;plan,&rdquo; &ldquo;predict,&rdquo;
&ldquo;project,&rdquo; &ldquo;prospects,&rdquo; &ldquo;will,&rdquo; &ldquo;should,&rdquo; &ldquo;would&rdquo; and similar expressions,
as they relate to us, are intended to identify forward-looking statements. These statements are based on current expectations, estimates
and projections made by management about our business, our industry and other conditions affecting our financial condition, results of
operations or business prospects. These statements are not guarantees of future performance and involve risks, uncertainties and assumptions
that are difficult to predict. Therefore, actual outcomes and results may differ materially from what is expressed or forecasted in,
or implied by, the forward-looking statements due to numerous risks and uncertainties. Factors that could cause such outcomes and results
to differ include, but are not limited to, risks and uncertainties arising from: our reliance on individual purchase orders, rather than
long-term contracts, to generate revenue; our ability to balance the composition of our revenues and effectively control operating expenses;
external factors that may be outside our control, including health emergencies, like epidemics or pandemics, the conflicts in&nbsp;Eastern
Europe&nbsp;and the&nbsp;Middle East, price inflation, interest rate increases and supply chain inefficiencies; the availability of appropriate
financing facilities impacting our operations, financial condition and/or liquidity; our ability to receive contract awards through competitive
bidding processes; our ability to maintain standards to enable us to manufacture products to exacting specifications; our ability to
enter new markets for our services; our reliance on a small number of customers for a significant percentage of our business; competitive
pressures in the markets we serve; changes in the availability or cost of raw materials and energy for our production facilities; restrictions
in our ability to operate our business due to our outstanding indebtedness; government regulations and requirements; pricing and business
development difficulties; changes in government spending on national defense; our ability to make acquisitions and successfully integrate
those acquisitions with our business; our failure to maintain effective internal controls over financial reporting; our ability to regain
compliance with the continued listing requirements of Nasdaq; general industry and market conditions and growth rates; and other risks
discussed in the Company&rsquo;s periodic reports that are filed with the&nbsp;Securities and Exchange Commission&nbsp;and available
on its website (</I></FONT><I><U>www.sec.gov</U>). Any forward-looking statements speak only as of the date on which they are made, and
we undertake no obligation to publicly update or revise any forward-looking statements to reflect events or circumstances that may arise
after the date of this press release, except as required by applicable law. Investors should evaluate any statements made by us in light
of these important factors.</I></P>

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

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

<!-- Field: Page; Sequence: 3; Options: Last -->
    <DIV STYLE="margin-top: 12pt; margin-bottom: 6pt; border-bottom: Black 1pt solid"><P STYLE="margin: 0pt">&nbsp;</P></DIV>
    <!-- Field: /Page -->

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

<P STYLE="margin: 0">&nbsp;</P>

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>3
<FILENAME>tpcs-20250214.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" ?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 5.25b -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
    <!-- Field: Doc-Info; Name: Misc; Value: +aA5w7xRiXgen8uLa3ZcWauMubOdzZR+SYkxtmBxbTnqrygucCJg8ywzaYLWYZcH -->
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:dei="http://xbrl.sec.gov/dei/2023" xmlns:us-gaap="http://fasb.org/us-gaap/2023" xmlns:srt="http://fasb.org/srt/2023" xmlns:srt-types="http://fasb.org/srt-types/2023" xmlns:tpcs="http://tech.pre.com/20250214" elementFormDefault="qualified" targetNamespace="http://tech.pre.com/20250214">
    <annotation>
      <appinfo>
        <link:roleType roleURI="http://tech.pre.com/role/Cover" id="Cover">
          <link:definition>00000001 - Document - Cover</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="tpcs-20250214_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Presentation Links" />
        <link:linkbaseRef xlink:type="simple" xlink:href="tpcs-20250214_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Label Links" />
      </appinfo>
    </annotation>
    <import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" />
    <import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" />
    <import namespace="http://xbrl.sec.gov/dei/2023" schemaLocation="https://xbrl.sec.gov/dei/2023/dei-2023.xsd" />
    <import namespace="http://fasb.org/us-gaap/2023" schemaLocation="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd" />
    <import namespace="http://fasb.org/us-types/2023" schemaLocation="https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd" />
    <import namespace="http://www.xbrl.org/dtr/type/2022-03-31" schemaLocation="https://www.xbrl.org/dtr/type/2022-03-31/types.xsd" />
    <import namespace="http://xbrl.sec.gov/country/2023" schemaLocation="https://xbrl.sec.gov/country/2023/country-2023.xsd" />
    <import namespace="http://fasb.org/srt/2023" schemaLocation="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd" />
    <import namespace="http://fasb.org/srt-types/2023" schemaLocation="https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd" />
</schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>4
<FILENAME>tpcs-20250214_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 5.25b -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" roleURI="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" roleURI="http://www.xbrl.org/2009/role/netLabel" />
    <link:labelLink xlink:type="extended" xlink:role="http://www.xbrl.org/2003/role/link">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CoverAbstract" xlink:label="dei_CoverAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CoverAbstract" xlink:to="dei_CoverAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CoverAbstract_lbl" xml:lang="en-US">Cover [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType" xlink:label="dei_DocumentType" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentType_lbl" xml:lang="en-US">Document Type</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AmendmentFlag_lbl" xml:lang="en-US">Amendment Flag</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentDescription" xlink:label="dei_AmendmentDescription" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentDescription" xlink:to="dei_AmendmentDescription_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AmendmentDescription_lbl" xml:lang="en-US">Amendment Description</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentRegistrationStatement" xlink:label="dei_DocumentRegistrationStatement" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentRegistrationStatement" xlink:to="dei_DocumentRegistrationStatement_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentRegistrationStatement_lbl" xml:lang="en-US">Document Registration Statement</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentAnnualReport" xlink:label="dei_DocumentAnnualReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentAnnualReport" xlink:to="dei_DocumentAnnualReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentAnnualReport_lbl" xml:lang="en-US">Document Annual Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentQuarterlyReport" xlink:to="dei_DocumentQuarterlyReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentQuarterlyReport_lbl" xml:lang="en-US">Document Quarterly Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentTransitionReport_lbl" xml:lang="en-US">Document Transition Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentShellCompanyReport" xlink:label="dei_DocumentShellCompanyReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentShellCompanyReport" xlink:to="dei_DocumentShellCompanyReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentShellCompanyReport_lbl" xml:lang="en-US">Document Shell Company Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentShellCompanyEventDate" xlink:label="dei_DocumentShellCompanyEventDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentShellCompanyEventDate" xlink:to="dei_DocumentShellCompanyEventDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentShellCompanyEventDate_lbl" xml:lang="en-US">Document Shell Company Event Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodStartDate" xlink:label="dei_DocumentPeriodStartDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodStartDate" xlink:to="dei_DocumentPeriodStartDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentPeriodStartDate_lbl" xml:lang="en-US">Document Period Start Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentPeriodEndDate_lbl" xml:lang="en-US">Document Period End Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentFiscalPeriodFocus_lbl" xml:lang="en-US">Document Fiscal Period Focus</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentFiscalYearFocus_lbl" xml:lang="en-US">Document Fiscal Year Focus</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CurrentFiscalYearEndDate_lbl" xml:lang="en-US">Current Fiscal Year End Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFileNumber" xlink:to="dei_EntityFileNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityFileNumber_lbl" xml:lang="en-US">Entity File Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityRegistrantName_lbl" xml:lang="en-US">Entity Registrant Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCentralIndexKey_lbl" xml:lang="en-US">Entity Central Index Key</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityPrimarySicNumber" xlink:label="dei_EntityPrimarySicNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityPrimarySicNumber" xlink:to="dei_EntityPrimarySicNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityPrimarySicNumber_lbl" xml:lang="en-US">Entity Primary SIC Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityTaxIdentificationNumber_lbl" xml:lang="en-US">Entity Tax Identification Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityIncorporationStateCountryCode_lbl" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine1_lbl" xml:lang="en-US">Entity Address, Address Line One</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine2" xlink:label="dei_EntityAddressAddressLine2" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine2" xlink:to="dei_EntityAddressAddressLine2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine2_lbl" xml:lang="en-US">Entity Address, Address Line Two</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine3" xlink:label="dei_EntityAddressAddressLine3" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine3" xlink:to="dei_EntityAddressAddressLine3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine3_lbl" xml:lang="en-US">Entity Address, Address Line Three</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressCityOrTown_lbl" xml:lang="en-US">Entity Address, City or Town</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressStateOrProvince_lbl" xml:lang="en-US">Entity Address, State or Province</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCountry" xlink:label="dei_EntityAddressCountry" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCountry" xlink:to="dei_EntityAddressCountry_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressCountry_lbl" xml:lang="en-US">Entity Address, Country</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressPostalZipCode_lbl" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CountryRegion" xlink:label="dei_CountryRegion" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CountryRegion" xlink:to="dei_CountryRegion_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CountryRegion_lbl" xml:lang="en-US">Country Region</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CityAreaCode" xlink:to="dei_CityAreaCode_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CityAreaCode_lbl" xml:lang="en-US">City Area Code</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_LocalPhoneNumber_lbl" xml:lang="en-US">Local Phone Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Extension" xlink:label="dei_Extension" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Extension" xlink:to="dei_Extension_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Extension_lbl" xml:lang="en-US">Extension</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_WrittenCommunications" xlink:label="dei_WrittenCommunications" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_WrittenCommunications" xlink:to="dei_WrittenCommunications_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_WrittenCommunications_lbl" xml:lang="en-US">Written Communications</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SolicitingMaterial" xlink:label="dei_SolicitingMaterial" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SolicitingMaterial" xlink:to="dei_SolicitingMaterial_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SolicitingMaterial_lbl" xml:lang="en-US">Soliciting Material</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_PreCommencementTenderOffer" xlink:label="dei_PreCommencementTenderOffer" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_PreCommencementTenderOffer" xlink:to="dei_PreCommencementTenderOffer_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_PreCommencementTenderOffer_lbl" xml:lang="en-US">Pre-commencement Tender Offer</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="dei_PreCommencementIssuerTenderOffer" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_PreCommencementIssuerTenderOffer" xlink:to="dei_PreCommencementIssuerTenderOffer_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_PreCommencementIssuerTenderOffer_lbl" xml:lang="en-US">Pre-commencement Issuer Tender Offer</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12bTitle" xlink:to="dei_Security12bTitle_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Security12bTitle_lbl" xml:lang="en-US">Title of 12(b) Security</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_NoTradingSymbolFlag" xlink:label="dei_NoTradingSymbolFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_NoTradingSymbolFlag" xlink:to="dei_NoTradingSymbolFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_NoTradingSymbolFlag_lbl" xml:lang="en-US">No Trading Symbol Flag</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_TradingSymbol" xlink:to="dei_TradingSymbol_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_TradingSymbol_lbl" xml:lang="en-US">Trading Symbol</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityExchangeName" xlink:to="dei_SecurityExchangeName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SecurityExchangeName_lbl" xml:lang="en-US">Security Exchange Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12gTitle" xlink:label="dei_Security12gTitle" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12gTitle" xlink:to="dei_Security12gTitle_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Security12gTitle_lbl" xml:lang="en-US">Title of 12(g) Security</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityReportingObligation" xlink:label="dei_SecurityReportingObligation" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityReportingObligation" xlink:to="dei_SecurityReportingObligation_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SecurityReportingObligation_lbl" xml:lang="en-US">Security Reporting Obligation</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AnnualInformationForm" xlink:label="dei_AnnualInformationForm" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AnnualInformationForm" xlink:to="dei_AnnualInformationForm_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AnnualInformationForm_lbl" xml:lang="en-US">Annual Information Form</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AuditedAnnualFinancialStatements" xlink:label="dei_AuditedAnnualFinancialStatements" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditedAnnualFinancialStatements" xlink:to="dei_AuditedAnnualFinancialStatements_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AuditedAnnualFinancialStatements_lbl" xml:lang="en-US">Audited Annual Financial Statements</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="dei_EntityWellKnownSeasonedIssuer" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityWellKnownSeasonedIssuer" xlink:to="dei_EntityWellKnownSeasonedIssuer_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityWellKnownSeasonedIssuer_lbl" xml:lang="en-US">Entity Well-known Seasoned Issuer</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityVoluntaryFilers" xlink:label="dei_EntityVoluntaryFilers" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityVoluntaryFilers" xlink:to="dei_EntityVoluntaryFilers_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityVoluntaryFilers_lbl" xml:lang="en-US">Entity Voluntary Filers</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCurrentReportingStatus_lbl" xml:lang="en-US">Entity Current Reporting Status</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityInteractiveDataCurrent_lbl" xml:lang="en-US">Entity Interactive Data Current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFilerCategory" xlink:to="dei_EntityFilerCategory_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityFilerCategory_lbl" xml:lang="en-US">Entity Filer Category</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntitySmallBusiness_lbl" xml:lang="en-US">Entity Small Business</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityEmergingGrowthCompany_lbl" xml:lang="en-US">Entity Emerging Growth Company</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityExTransitionPeriod" xlink:label="dei_EntityExTransitionPeriod" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityExTransitionPeriod" xlink:to="dei_EntityExTransitionPeriod_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityExTransitionPeriod_lbl" xml:lang="en-US">Elected Not To Use the Extended Transition Period</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentAccountingStandard" xlink:label="dei_DocumentAccountingStandard" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentAccountingStandard" xlink:to="dei_DocumentAccountingStandard_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentAccountingStandard_lbl" xml:lang="en-US">Document Accounting Standard</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_OtherReportingStandardItemNumber" xlink:label="dei_OtherReportingStandardItemNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_OtherReportingStandardItemNumber" xlink:to="dei_OtherReportingStandardItemNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_OtherReportingStandardItemNumber_lbl" xml:lang="en-US">Other Reporting Standard Item Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityShellCompany" xlink:to="dei_EntityShellCompany_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityShellCompany_lbl" xml:lang="en-US">Entity Shell Company</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityPublicFloat" xlink:label="dei_EntityPublicFloat" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityPublicFloat" xlink:to="dei_EntityPublicFloat_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityPublicFloat_lbl" xml:lang="en-US">Entity Public Float</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityBankruptcyProceedingsReportingCurrent" xlink:label="dei_EntityBankruptcyProceedingsReportingCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityBankruptcyProceedingsReportingCurrent" xlink:to="dei_EntityBankruptcyProceedingsReportingCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityBankruptcyProceedingsReportingCurrent_lbl" xml:lang="en-US">Entity Bankruptcy Proceedings, Reporting Current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCommonStockSharesOutstanding_lbl" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentsIncorporatedByReferenceTextBlock" xlink:label="dei_DocumentsIncorporatedByReferenceTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentsIncorporatedByReferenceTextBlock" xlink:to="dei_DocumentsIncorporatedByReferenceTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentsIncorporatedByReferenceTextBlock_lbl" xml:lang="en-US">Documents Incorporated by Reference [Text Block]</link:label>
    </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>5
<FILENAME>tpcs-20250214_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 5.25b -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
    <link:roleRef roleURI="http://tech.pre.com/role/Cover" xlink:href="tpcs-20250214.xsd#Cover" xlink:type="simple" />
    <link:presentationLink xlink:type="extended" xlink:role="http://tech.pre.com/role/Cover" xlink:title="00000001 - Document - Cover">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CoverAbstract" xlink:label="loc_deiCoverAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType" xlink:label="loc_deiDocumentType" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentType" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag" xlink:label="loc_deiAmendmentFlag" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAmendmentFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentDescription" xlink:label="loc_deiAmendmentDescription" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAmendmentDescription" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentRegistrationStatement" xlink:label="loc_deiDocumentRegistrationStatement" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentRegistrationStatement" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentAnnualReport" xlink:label="loc_deiDocumentAnnualReport" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentAnnualReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentQuarterlyReport" xlink:label="loc_deiDocumentQuarterlyReport" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentQuarterlyReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport" xlink:label="loc_deiDocumentTransitionReport" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentTransitionReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentShellCompanyReport" xlink:label="loc_deiDocumentShellCompanyReport" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentShellCompanyReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentShellCompanyEventDate" xlink:label="loc_deiDocumentShellCompanyEventDate" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentShellCompanyEventDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodStartDate" xlink:label="loc_deiDocumentPeriodStartDate" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentPeriodStartDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_deiDocumentPeriodEndDate" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentPeriodEndDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="loc_deiDocumentFiscalPeriodFocus" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentFiscalPeriodFocus" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus" xlink:label="loc_deiDocumentFiscalYearFocus" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentFiscalYearFocus" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate" xlink:label="loc_deiCurrentFiscalYearEndDate" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiCurrentFiscalYearEndDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber" xlink:label="loc_deiEntityFileNumber" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityFileNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName" xlink:label="loc_deiEntityRegistrantName" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityRegistrantName" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey" xlink:label="loc_deiEntityCentralIndexKey" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCentralIndexKey" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityPrimarySicNumber" xlink:label="loc_deiEntityPrimarySicNumber" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityPrimarySicNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber" xlink:label="loc_deiEntityTaxIdentificationNumber" />
      <link:presentationArc order="180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityTaxIdentificationNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="loc_deiEntityIncorporationStateCountryCode" />
      <link:presentationArc order="190" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityIncorporationStateCountryCode" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1" xlink:label="loc_deiEntityAddressAddressLine1" />
      <link:presentationArc order="200" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressAddressLine1" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine2" xlink:label="loc_deiEntityAddressAddressLine2" />
      <link:presentationArc order="210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressAddressLine2" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine3" xlink:label="loc_deiEntityAddressAddressLine3" />
      <link:presentationArc order="220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressAddressLine3" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown" xlink:label="loc_deiEntityAddressCityOrTown" />
      <link:presentationArc order="230" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressCityOrTown" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince" xlink:label="loc_deiEntityAddressStateOrProvince" />
      <link:presentationArc order="240" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressStateOrProvince" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCountry" xlink:label="loc_deiEntityAddressCountry" />
      <link:presentationArc order="250" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressCountry" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode" xlink:label="loc_deiEntityAddressPostalZipCode" />
      <link:presentationArc order="260" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressPostalZipCode" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CountryRegion" xlink:label="loc_deiCountryRegion" />
      <link:presentationArc order="270" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiCountryRegion" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode" xlink:label="loc_deiCityAreaCode" />
      <link:presentationArc order="280" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiCityAreaCode" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber" xlink:label="loc_deiLocalPhoneNumber" />
      <link:presentationArc order="290" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiLocalPhoneNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Extension" xlink:label="loc_deiExtension" />
      <link:presentationArc order="300" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiExtension" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_WrittenCommunications" xlink:label="loc_deiWrittenCommunications" />
      <link:presentationArc order="310" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiWrittenCommunications" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SolicitingMaterial" xlink:label="loc_deiSolicitingMaterial" />
      <link:presentationArc order="320" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSolicitingMaterial" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_PreCommencementTenderOffer" xlink:label="loc_deiPreCommencementTenderOffer" />
      <link:presentationArc order="330" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiPreCommencementTenderOffer" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="loc_deiPreCommencementIssuerTenderOffer" />
      <link:presentationArc order="340" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiPreCommencementIssuerTenderOffer" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle" xlink:label="loc_deiSecurity12bTitle" />
      <link:presentationArc order="350" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurity12bTitle" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_NoTradingSymbolFlag" xlink:label="loc_deiNoTradingSymbolFlag" />
      <link:presentationArc order="360" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiNoTradingSymbolFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol" xlink:label="loc_deiTradingSymbol" />
      <link:presentationArc order="370" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiTradingSymbol" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName" xlink:label="loc_deiSecurityExchangeName" />
      <link:presentationArc order="380" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurityExchangeName" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12gTitle" xlink:label="loc_deiSecurity12gTitle" />
      <link:presentationArc order="390" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurity12gTitle" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityReportingObligation" xlink:label="loc_deiSecurityReportingObligation" />
      <link:presentationArc order="400" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurityReportingObligation" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AnnualInformationForm" xlink:label="loc_deiAnnualInformationForm" />
      <link:presentationArc order="410" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAnnualInformationForm" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AuditedAnnualFinancialStatements" xlink:label="loc_deiAuditedAnnualFinancialStatements" />
      <link:presentationArc order="420" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAuditedAnnualFinancialStatements" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="loc_deiEntityWellKnownSeasonedIssuer" />
      <link:presentationArc order="430" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityWellKnownSeasonedIssuer" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityVoluntaryFilers" xlink:label="loc_deiEntityVoluntaryFilers" />
      <link:presentationArc order="440" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityVoluntaryFilers" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus" xlink:label="loc_deiEntityCurrentReportingStatus" />
      <link:presentationArc order="450" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCurrentReportingStatus" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent" xlink:label="loc_deiEntityInteractiveDataCurrent" />
      <link:presentationArc order="460" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityInteractiveDataCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory" xlink:label="loc_deiEntityFilerCategory" />
      <link:presentationArc order="470" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityFilerCategory" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness" xlink:label="loc_deiEntitySmallBusiness" />
      <link:presentationArc order="480" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntitySmallBusiness" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany" xlink:label="loc_deiEntityEmergingGrowthCompany" />
      <link:presentationArc order="490" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityEmergingGrowthCompany" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityExTransitionPeriod" xlink:label="loc_deiEntityExTransitionPeriod" />
      <link:presentationArc order="500" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityExTransitionPeriod" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentAccountingStandard" xlink:label="loc_deiDocumentAccountingStandard" />
      <link:presentationArc order="510" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentAccountingStandard" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_OtherReportingStandardItemNumber" xlink:label="loc_deiOtherReportingStandardItemNumber" />
      <link:presentationArc order="520" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiOtherReportingStandardItemNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany" xlink:label="loc_deiEntityShellCompany" />
      <link:presentationArc order="530" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityShellCompany" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityPublicFloat" xlink:label="loc_deiEntityPublicFloat" />
      <link:presentationArc order="540" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityPublicFloat" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityBankruptcyProceedingsReportingCurrent" xlink:label="loc_deiEntityBankruptcyProceedingsReportingCurrent" />
      <link:presentationArc order="550" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityBankruptcyProceedingsReportingCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="loc_deiEntityCommonStockSharesOutstanding" />
      <link:presentationArc order="560" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCommonStockSharesOutstanding" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentsIncorporatedByReferenceTextBlock" xlink:label="loc_deiDocumentsIncorporatedByReferenceTextBlock" />
      <link:presentationArc order="570" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentsIncorporatedByReferenceTextBlock" xlink:type="arc" />
    </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>7
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.0.1</span><table class="report" border="0" cellspacing="2" id="idm46097081766832">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Cover<br></strong></div></th>
<th class="th"><div>Feb. 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>Cover [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_AmendmentFlag', window );">Amendment Flag</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_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Feb. 14,  2025<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">001-41698<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">TECHPRECISION
CORPORATION<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">0001328792<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_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">51-0539828<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">DE<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">1
Bella Drive<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Westminster<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">MA<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">01473<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">978<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">874-0591<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_WrittenCommunications', window );">Written Communications</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_SolicitingMaterial', window );">Soliciting Material</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_PreCommencementTenderOffer', window );">Pre-commencement Tender Offer</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_PreCommencementIssuerTenderOffer', window );">Pre-commencement Issuer Tender Offer</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common
    Stock, par value $0.0001 per share<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">TPCS<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_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NASDAQ<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_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</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_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> -Section 14a<br> -Number 240<br> -Subsection 12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SolicitingMaterial</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_WrittenCommunications">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as written communications pursuant to Rule 425 under the Securities Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br> -Section 425<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_WrittenCommunications</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>8
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
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
M1S;5>@MD=8 ULK6 I><'N$$ON('MCUP1/_AY^0N9LV@+]5:YGM<HV?J4XH+
MW]S(Z.LER:@B+S39,O*C=VW7>Y+!F/6&*I3]Z!R >_="T=C6X/PM7<K*"JP3
M",=SC*1T_0!WZ/>TD<EKM*%BS4YNW6J$'D?SN]'O&%-I]\%9=C])F5K;+/T&
M"F9C;22CHGJ"_^>1P#TZ4MKC^0.U3]0D82L0\JX[8-UJ?^+==XS,\E/F4AHX
ML^;-#:/P0M@;X/N5E.:]8P^NQ>\.P_\ 4$L#!!0    ( ,R+3EJ?H!OPL0(
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
M3AI_YHOA/UY_ 5!+ 0(4 Q0    ( ,R+3EH'04UB@0   +$    0
M      "  0    !D;V-0<F]P<R]A<' N>&UL4$L! A0#%     @ S(M.6@,)
M8='N    *P(  !$              ( !KP   &1O8U!R;W!S+V-O<F4N>&UL
M4$L! A0#%     @ S(M.6IE<G",0!@  G"<  !,              ( !S $
M 'AL+W1H96UE+W1H96UE,2YX;6Q02P$"% ,4    " #,BTY:3R3KA5 $  "#
M$   &               @($-"   >&PO=V]R:W-H965T<R]S:&5E=#$N>&UL
M4$L! A0#%     @ S(M.6I^@&_"Q @  X@P   T              ( !DPP
M 'AL+W-T>6QE<RYX;6Q02P$"% ,4    " #,BTY:EXJ[',     3 @  "P
M            @ %O#P  7W)E;',O+G)E;'-02P$"% ,4    " #,BTY:JL0B
M%C,!   B @  #P              @ %8$   >&PO=V]R:V)O;VLN>&UL4$L!
M A0#%     @ S(M.6B0>FZ*M    ^ $  !H              ( !N!$  'AL
M+U]R96QS+W=O<FMB;V]K+GAM;"YR96QS4$L! A0#%     @ S(M.6F60>9(9
M 0  SP,  !,              ( !G1(  %M#;VYT96YT7U1Y<&5S72YX;6Q0
52P4&      D "0 ^ @  YQ,

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>9
<FILENAME>Show.js
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
// Edgar(tm) Renderer was created by staff of the U.S. Securities and Exchange Commission.  Data and content created by government employees within the scope of their employment are not subject to domestic copyright protection. 17 U.S.C. 105.
var Show={};Show.LastAR=null,Show.showAR=function(a,r,w){if(Show.LastAR)Show.hideAR();var e=a;while(e&&e.nodeName!='TABLE')e=e.nextSibling;if(!e||e.nodeName!='TABLE'){var ref=((window)?w.document:document).getElementById(r);if(ref){e=ref.cloneNode(!0);
e.removeAttribute('id');a.parentNode.appendChild(e)}}
if(e)e.style.display='block';Show.LastAR=e};Show.hideAR=function(){Show.LastAR.style.display='none'};Show.toggleNext=function(a){var e=a;while(e.nodeName!='DIV')e=e.nextSibling;if(!e.style){}else if(!e.style.display){}else{var d,p_;if(e.style.display=='none'){d='block';p='-'}else{d='none';p='+'}
e.style.display=d;if(a.textContent){a.textContent=p+a.textContent.substring(1)}else{a.innerText=p+a.innerText.substring(1)}}}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>10
<FILENAME>report.css
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
/* Updated 2009-11-04 */
/* v2.2.0.24 */

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.report sup {
	font-style: italic;
}

.report .outerFootnotes {
	font-size: 1em;
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.25.0.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>1</ContextCount>
  <ElementCount>22</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>0</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>3</UnitCount>
  <MyReports>
    <Report instance="tm256769d1_8k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>00000001 - Document - Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tech.pre.com/role/Cover</Role>
      <ShortName>Cover</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 doctype="8-K" isOnlyDei="true" isUsgaap="true" original="tm256769d1_8k.htm">tm256769d1_8k.htm</File>
    <File>tpcs-20250214.xsd</File>
    <File>tpcs-20250214_lab.xml</File>
    <File>tpcs-20250214_pre.xml</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="22">http://xbrl.sec.gov/dei/2023</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>false</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>14
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "tm256769d1_8k.htm": {
   "nsprefix": "tpcs",
   "nsuri": "http://tech.pre.com/20250214",
   "dts": {
    "inline": {
     "local": [
      "tm256769d1_8k.htm"
     ]
    },
    "schema": {
     "local": [
      "tpcs-20250214.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd",
      "https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd",
      "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd",
      "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd",
      "https://xbrl.sec.gov/country/2023/country-2023.xsd",
      "https://xbrl.sec.gov/dei/2023/dei-2023.xsd"
     ]
    },
    "labelLink": {
     "local": [
      "tpcs-20250214_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "tpcs-20250214_pre.xml"
     ]
    }
   },
   "keyStandard": 22,
   "keyCustom": 0,
   "axisStandard": 0,
   "axisCustom": 0,
   "memberStandard": 0,
   "memberCustom": 0,
   "hidden": {
    "total": 2,
    "http://xbrl.sec.gov/dei/2023": 2
   },
   "contextCount": 1,
   "entityCount": 1,
   "segmentCount": 0,
   "elementCount": 59,
   "unitCount": 3,
   "baseTaxonomies": {
    "http://xbrl.sec.gov/dei/2023": 22
   },
   "report": {
    "R1": {
     "role": "http://tech.pre.com/role/Cover",
     "longName": "00000001 - Document - Cover",
     "shortName": "Cover",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "AsOf2025-02-14",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "b",
       "p",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tm256769d1_8k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-02-14",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "b",
       "p",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tm256769d1_8k.htm",
      "first": true,
      "unique": true
     }
    }
   },
   "tag": {
    "dei_AmendmentDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "AmendmentDescription",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amendment Description",
        "documentation": "Description of changes contained within amended document."
       }
      }
     },
     "auth_ref": []
    },
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "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_AnnualInformationForm": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "AnnualInformationForm",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Annual Information Form",
        "documentation": "Boolean flag with value true on a form if it is an annual report containing an annual information form."
       }
      }
     },
     "auth_ref": [
      "r14"
     ]
    },
    "dei_AuditedAnnualFinancialStatements": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "AuditedAnnualFinancialStatements",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Audited Annual Financial Statements",
        "documentation": "Boolean flag with value true on a form if it is an annual report containing audited financial statements."
       }
      }
     },
     "auth_ref": [
      "r14"
     ]
    },
    "dei_CityAreaCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CityAreaCode",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "City Area Code",
        "documentation": "Area code of city"
       }
      }
     },
     "auth_ref": []
    },
    "dei_CountryRegion": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CountryRegion",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Country Region",
        "documentation": "Region code of country"
       }
      }
     },
     "auth_ref": []
    },
    "dei_CoverAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CoverAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Cover [Abstract]",
        "documentation": "Cover page."
       }
      }
     },
     "auth_ref": []
    },
    "dei_CurrentFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CurrentFiscalYearEndDate",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current Fiscal Year End Date",
        "documentation": "End date of current fiscal year in the format --MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentAccountingStandard": {
     "xbrltype": "accountingStandardItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentAccountingStandard",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Accounting Standard",
        "documentation": "The basis of accounting the registrant has used to prepare the financial statements included in this filing This can either be 'U.S. GAAP', 'International Financial Reporting Standards', or 'Other'."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "dei_DocumentAnnualReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentAnnualReport",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Annual Report",
        "documentation": "Boolean flag that is true only for a form used as an annual report."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r13",
      "r14"
     ]
    },
    "dei_DocumentFiscalPeriodFocus": {
     "xbrltype": "fiscalPeriodItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentFiscalPeriodFocus",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Fiscal Period Focus",
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentFiscalYearFocus": {
     "xbrltype": "gYearItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentFiscalYearFocus",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Fiscal Year Focus",
        "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentPeriodEndDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentPeriodEndDate",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "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_DocumentPeriodStartDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentPeriodStartDate",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Period Start Date",
        "documentation": "The start date of the period covered in the document, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentQuarterlyReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentQuarterlyReport",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Quarterly Report",
        "documentation": "Boolean flag that is true only for a form used as an quarterly report."
       }
      }
     },
     "auth_ref": [
      "r12"
     ]
    },
    "dei_DocumentRegistrationStatement": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentRegistrationStatement",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Registration Statement",
        "documentation": "Boolean flag that is true only for a form used as a registration statement."
       }
      }
     },
     "auth_ref": [
      "r0"
     ]
    },
    "dei_DocumentShellCompanyEventDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentShellCompanyEventDate",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Shell Company Event Date",
        "documentation": "Date of event requiring a shell company report."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "dei_DocumentShellCompanyReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentShellCompanyReport",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Shell Company Report",
        "documentation": "Boolean flag that is true for a Shell Company Report pursuant to section 13 or 15(d) of the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "dei_DocumentTransitionReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentTransitionReport",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Transition Report",
        "documentation": "Boolean flag that is true only for a form used as a transition report."
       }
      }
     },
     "auth_ref": [
      "r15"
     ]
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentType",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "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_DocumentsIncorporatedByReferenceTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentsIncorporatedByReferenceTextBlock",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Documents Incorporated by Reference [Text Block]",
        "documentation": "Documents incorporated by reference."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "dei_EntityAddressAddressLine1": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressAddressLine1",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "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/2023",
     "localname": "EntityAddressAddressLine2",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Address Line Two",
        "documentation": "Address Line 2 such as Street or Suite number"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressAddressLine3": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressAddressLine3",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Address Line Three",
        "documentation": "Address Line 3 such as an Office Park"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressCityOrTown": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressCityOrTown",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, City or Town",
        "documentation": "Name of the City or Town"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressCountry": {
     "xbrltype": "countryCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressCountry",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Country",
        "documentation": "ISO 3166-1 alpha-2 country code."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressPostalZipCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressPostalZipCode",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "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/2023",
     "localname": "EntityAddressStateOrProvince",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, State or Province",
        "documentation": "Name of the state or province."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityBankruptcyProceedingsReportingCurrent": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityBankruptcyProceedingsReportingCurrent",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Bankruptcy Proceedings, Reporting Current",
        "documentation": "For registrants involved in bankruptcy proceedings during the preceding five years, the value Yes indicates that the registrant has filed all documents and reports required to be filed by Section 12, 13 or 15(d) of the Securities Exchange Act of 1934 subsequent to the distribution of securities under a plan confirmed by a court; the value No indicates the registrant has not.  Registrants not involved in bankruptcy proceedings during the preceding five years should not report this element."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "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": [
      "r2"
     ]
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCommonStockSharesOutstanding",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Common Stock, Shares Outstanding",
        "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCurrentReportingStatus": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCurrentReportingStatus",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Current Reporting Status",
        "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityEmergingGrowthCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityEmergingGrowthCompany",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Emerging Growth Company",
        "documentation": "Indicate if registrant meets the emerging growth company criteria."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "dei_EntityExTransitionPeriod": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityExTransitionPeriod",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Elected Not To Use the Extended Transition Period",
        "documentation": "Indicate if an emerging growth company has elected not to use the extended transition period for complying with any new or revised financial accounting standards."
       }
      }
     },
     "auth_ref": [
      "r19"
     ]
    },
    "dei_EntityFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityFileNumber",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity File Number",
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityFilerCategory": {
     "xbrltype": "filerCategoryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityFilerCategory",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Filer Category",
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "dei_EntityIncorporationStateCountryCode": {
     "xbrltype": "edgarStateCountryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityIncorporationStateCountryCode",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "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_EntityInteractiveDataCurrent": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityInteractiveDataCurrent",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Interactive Data Current",
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)."
       }
      }
     },
     "auth_ref": [
      "r16"
     ]
    },
    "dei_EntityPrimarySicNumber": {
     "xbrltype": "sicNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityPrimarySicNumber",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Primary SIC Number",
        "documentation": "Primary Standard Industrial Classification (SIC) Number for the Entity."
       }
      }
     },
     "auth_ref": [
      "r14"
     ]
    },
    "dei_EntityPublicFloat": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityPublicFloat",
     "crdr": "credit",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Public Float",
        "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "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": [
      "r2"
     ]
    },
    "dei_EntityShellCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityShellCompany",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Shell Company",
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "dei_EntitySmallBusiness": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntitySmallBusiness",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Small Business",
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityTaxIdentificationNumber",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "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": [
      "r2"
     ]
    },
    "dei_EntityVoluntaryFilers": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityVoluntaryFilers",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Voluntary Filers",
        "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityWellKnownSeasonedIssuer",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Well-known Seasoned Issuer",
        "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A."
       }
      }
     },
     "auth_ref": [
      "r17"
     ]
    },
    "dei_Extension": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "Extension",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Extension",
        "documentation": "Extension number for local phone number."
       }
      }
     },
     "auth_ref": []
    },
    "dei_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "LocalPhoneNumber",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Local Phone Number",
        "documentation": "Local phone number for entity."
       }
      }
     },
     "auth_ref": []
    },
    "dei_NoTradingSymbolFlag": {
     "xbrltype": "trueItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "NoTradingSymbolFlag",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "No Trading Symbol Flag",
        "documentation": "Boolean flag that is true only for a security having no trading symbol."
       }
      }
     },
     "auth_ref": []
    },
    "dei_OtherReportingStandardItemNumber": {
     "xbrltype": "otherReportingStandardItemNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "OtherReportingStandardItemNumber",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Reporting Standard Item Number",
        "documentation": "\"Item 17\" or \"Item 18\" specified when the basis of accounting is neither US GAAP nor IFRS."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "dei_PreCommencementIssuerTenderOffer": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "PreCommencementIssuerTenderOffer",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "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": [
      "r7"
     ]
    },
    "dei_PreCommencementTenderOffer": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "PreCommencementTenderOffer",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "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": [
      "r8"
     ]
    },
    "dei_Security12bTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "Security12bTitle",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of 12(b) Security",
        "documentation": "Title of a 12(b) registered security."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "dei_Security12gTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "Security12gTitle",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of 12(g) Security",
        "documentation": "Title of a 12(g) registered security."
       }
      }
     },
     "auth_ref": [
      "r5"
     ]
    },
    "dei_SecurityExchangeName": {
     "xbrltype": "edgarExchangeCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "SecurityExchangeName",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Security Exchange Name",
        "documentation": "Name of the Exchange on which a security is registered."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "dei_SecurityReportingObligation": {
     "xbrltype": "securityReportingObligationItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "SecurityReportingObligation",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Security Reporting Obligation",
        "documentation": "15(d), indicating whether the security has a reporting obligation under that section of the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r9"
     ]
    },
    "dei_SolicitingMaterial": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "SolicitingMaterial",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "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": [
      "r10"
     ]
    },
    "dei_TradingSymbol": {
     "xbrltype": "tradingSymbolItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "TradingSymbol",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "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/2023",
     "localname": "WrittenCommunications",
     "presentation": [
      "http://tech.pre.com/role/Cover"
     ],
     "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": [
      "r18"
     ]
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12"
  },
  "r1": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r2": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r3": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-23"
  },
  "r4": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r5": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "g"
  },
  "r6": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12, 13, 15d"
  },
  "r7": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "13e",
   "Subsection": "4c"
  },
  "r8": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "14d",
   "Subsection": "2b"
  },
  "r9": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "15",
   "Subsection": "d"
  },
  "r10": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Section": "14a",
   "Number": "240",
   "Subsection": "12"
  },
  "r11": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-K",
   "Number": "249",
   "Section": "310"
  },
  "r12": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-Q",
   "Number": "240",
   "Section": "308",
   "Subsection": "a"
  },
  "r13": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Number": "249",
   "Section": "220",
   "Subsection": "f"
  },
  "r14": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Number": "249",
   "Section": "240",
   "Subsection": "f"
  },
  "r15": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Section": "13",
   "Subsection": "a-1"
  },
  "r16": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "405"
  },
  "r17": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "405"
  },
  "r18": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "425"
  },
  "r19": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "7A",
   "Section": "B",
   "Subsection": "2"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>15
<FILENAME>0001104659-25-014333-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001104659-25-014333-xbrl.zip
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
MB#@.>:*OJDZ'O#3GQ<>CLRKJ4P\X1N"2>R*R@K@)6;1ACDK*&F:SUIL:\XD
M/R- ;TP>,@!<RU&,^\HW&N*S[H5Y4^KS5[K@SZ$OG4G+I.H^..-]2.51H!-:
M>-*>\G&>)S3@!E"[9/4%N/*M++^Z4J?Y!\BUL^GK/DF6#"/DL"'-]1E.-I-N
M;V?9J8S&WQX@?]:N\HT$*A;E3U0*&=ED#,*3Z?1>V71UY03.B3H^P-2H[BXP
M!7N!C($$42?Q%AQTE.Q7LD$&RO- U@_-@FG%T-AK'@D[DXAI&N7:K<"TND+M
MA0N3FQXURO1/VB_N4HMN+&O1'Z(678#9HA_\JZ!M_#A@POZE>$>UQB%[RK<P
M7 @ XL/^X<'^^2*?F@?]PIR(<'<&?Z];"\"?F,5^X_7\Z.#/B%Q)BZ -#Q"2
MMQNF>A$#IQ'ZN*%=/Q&ZK88J'AH/#=&1Q^,9*;N_[67>#[;7UQ?V1U\3)P69
M3TQ$Q=P&Q)$P=84F!2&R0SG5Q=1@>84AT%! ^;[$-0G7M:%=-^_EA=1E%?/^
MA.6_>./G4G:5^%5:1#XR-L^.]+2W>Q8MYN&:Q)V@5M&.8DLPREA?.'9_VM:-
M.]<PL*&T:3,W)NX,1P&ZJM^XY;-<J$>O80OLE ZPR\TV#V>7IG P4?B$L$%8
M>76%0N68>#14 /5BZBK!/FL)NT&96  B".-^"K!B7"-QJ)DUWL8$Q)F@R<6
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
MR672OPI?'[L'O8>G5(V^I/UK]BPF48+.?T2'D_$K?.C</3RB[WG(ID1#/()
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
MBTY:1^?Z(Y84  #K9@  $0              @ $     =&TR-38W-CED,5\X
M:RYH=&U02P$"% ,4    " #,BTY:ZJUL:VT2  "?>0  %0
M@ '%%   =&TR-38W-CED,5]E>#DY+3$N:'1M4$L! A0#%     @ S(M.6C&,
M_9XI P  XPL  !$              ( !92<  '1P8W,M,C R-3 R,30N>'-D
M4$L! A0#%     @ S(M.6N!M.\?^"@  @(8  !4              ( !O2H
M '1P8W,M,C R-3 R,31?;&%B+GAM;%!+ 0(4 Q0    ( ,R+3EJ2?W$F6 <
M -57   5              "  >XU  !T<&-S+3(P,C4P,C$T7W!R92YX;6Q0
52P4&      4 !0!' 0  >3T

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<FILENAME>tm256769d1_8k_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2023"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="tpcs-20250214.xsd" xlink:type="simple"/>
    <context id="AsOf2025-02-14">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001328792</identifier>
        </entity>
        <period>
            <startDate>2025-02-14</startDate>
            <endDate>2025-02-14</endDate>
        </period>
    </context>
    <unit id="USD">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="Shares">
        <measure>shares</measure>
    </unit>
    <unit id="USDPShares">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <dei:AmendmentFlag contextRef="AsOf2025-02-14" id="Fact000003">false</dei:AmendmentFlag>
    <dei:EntityCentralIndexKey contextRef="AsOf2025-02-14" id="Fact000004">0001328792</dei:EntityCentralIndexKey>
    <dei:DocumentType contextRef="AsOf2025-02-14" id="Fact000009">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate contextRef="AsOf2025-02-14" id="Fact000010">2025-02-14</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName contextRef="AsOf2025-02-14" id="Fact000011">TECHPRECISION CORPORATION</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode contextRef="AsOf2025-02-14" id="Fact000012">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber contextRef="AsOf2025-02-14" id="Fact000013">001-41698</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber contextRef="AsOf2025-02-14" id="Fact000014">51-0539828</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="AsOf2025-02-14" id="Fact000015">1 Bella Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="AsOf2025-02-14" id="Fact000016">Westminster</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="AsOf2025-02-14" id="Fact000017">MA</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="AsOf2025-02-14" id="Fact000018">01473</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="AsOf2025-02-14" id="Fact000019">978</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="AsOf2025-02-14" id="Fact000020">874-0591</dei:LocalPhoneNumber>
    <dei:Security12bTitle contextRef="AsOf2025-02-14" id="Fact000021">Common     Stock, par value $0.0001 per share</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="AsOf2025-02-14" id="Fact000022">TPCS</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="AsOf2025-02-14" id="Fact000023">NASDAQ</dei:SecurityExchangeName>
    <dei:WrittenCommunications contextRef="AsOf2025-02-14" id="Fact000024">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial contextRef="AsOf2025-02-14" id="Fact000025">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer contextRef="AsOf2025-02-14" id="Fact000026">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer contextRef="AsOf2025-02-14" id="Fact000027">false</dei:PreCommencementIssuerTenderOffer>
    <dei:EntityEmergingGrowthCompany contextRef="AsOf2025-02-14" id="Fact000028">false</dei:EntityEmergingGrowthCompany>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
