<SEC-DOCUMENT>0001193125-24-136148.txt : 20240510
<SEC-HEADER>0001193125-24-136148.hdr.sgml : 20240510
<ACCEPTANCE-DATETIME>20240510160618
ACCESSION NUMBER:		0001193125-24-136148
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		39
CONFORMED PERIOD OF REPORT:	20240331
FILED AS OF DATE:		20240510
DATE AS OF CHANGE:		20240510

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			CHICAGO RIVET & MACHINE CO
		CENTRAL INDEX KEY:			0000019871
		STANDARD INDUSTRIAL CLASSIFICATION:	METALWORKING MACHINERY & EQUIPMENT [3540]
		ORGANIZATION NAME:           	06 Technology
		IRS NUMBER:				360904920
		STATE OF INCORPORATION:			IL
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		10-Q
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	000-01227
		FILM NUMBER:		24934840

	BUSINESS ADDRESS:	
		STREET 1:		901 FRONTENAC RD
		STREET 2:		P O BOX 3061
		CITY:			NAPERVILLE
		STATE:			IL
		ZIP:			60566
		BUSINESS PHONE:		6303578500

	MAIL ADDRESS:	
		STREET 1:		901 FRONTENAC RD
		STREET 2:		P O BOX 3061
		CITY:			NAPERVILLE
		STATE:			IL
		ZIP:			60566
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-Q
<SEQUENCE>1
<FILENAME>d805117d10q.htm
<DESCRIPTION>10-Q
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:dei="http://xbrl.sec.gov/dei/2023" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2022-03-31" xmlns:us-gaap="http://fasb.org/us-gaap/2023" xmlns:srt="http://fasb.org/srt/2023" xmlns:country="http://xbrl.sec.gov/country/2023" xmlns:fil="http://www.chicagorivet.com/20240331" xmlns:i="http://www.xbrl.org/2003/instance" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2020-02-12" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<head>
<title>10-Q</title>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type"/>
</head>

   <body> <div style="display:none"> <ix:header> <ix:hidden> <ix:nonNumeric name="dei:EntityCentralIndexKey" contextRef="Y24Q1" id="fact1">0000019871</ix:nonNumeric> <ix:nonNumeric name="dei:CurrentFiscalYearEndDate" contextRef="Y24Q1" id="fact2">--12-31</ix:nonNumeric> <ix:nonNumeric name="dei:EntityRegistrantName" contextRef="Y24Q1" id="fact3">CHICAGO RIVET &amp; MACHINE CO</ix:nonNumeric> <ix:nonNumeric name="dei:SecurityExchangeName" contextRef="Y24Q1" id="fact4">NYSEAMER</ix:nonNumeric> <ix:nonNumeric name="dei:AmendmentFlag" contextRef="Y24Q1" id="fact5">false</ix:nonNumeric> <ix:nonNumeric name="dei:DocumentFiscalYearFocus" contextRef="Y24Q1" id="fact6">2024</ix:nonNumeric> <ix:nonNumeric name="dei:DocumentFiscalPeriodFocus" contextRef="Y24Q1" id="fact7">Q1</ix:nonNumeric> <ix:nonNumeric name="dei:DocumentQuarterlyReport" contextRef="Y24Q1" id="fact8">true</ix:nonNumeric> <ix:nonNumeric name="dei:DocumentTransitionReport" contextRef="Y24Q1" id="fact9">false</ix:nonNumeric> </ix:hidden> <ix:references> <link:schemaRef xlink:arcrole="http://www.xbrl.org/2003/linkbase" xlink:href="cvr-20240331.xsd" xlink:type="simple"/> </ix:references> <ix:resources> <i:context id="Y24Q1"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> </i:entity> <i:period> <i:startDate>2024-01-01</i:startDate> <i:endDate>2024-03-31</i:endDate> </i:period> </i:context> <i:context id="E24Q1"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> </i:entity> <i:period> <i:instant>2024-03-31</i:instant> </i:period> </i:context> <i:context id="I240508"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> </i:entity> <i:period> <i:instant>2024-05-08</i:instant> </i:period> </i:context> <i:context id="E23"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> </i:entity> <i:period> <i:instant>2023-12-31</i:instant> </i:period> </i:context> <i:context id="Y23Q1"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> </i:entity> <i:period> <i:startDate>2023-01-01</i:startDate> <i:endDate>2023-03-31</i:endDate> </i:period> </i:context> <i:context id="Y24Q1_StEqComps-RetainedEarnings"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2024-01-01</i:startDate> <i:endDate>2024-03-31</i:endDate> </i:period> </i:context> <i:context id="E23_StEqComps-PrefStock"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2023-12-31</i:instant> </i:period> </i:context> <i:context id="E23_StEqComps-CommonStock"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2023-12-31</i:instant> </i:period> </i:context> <i:context id="E23_StEqComps-AddPaidInCap"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2023-12-31</i:instant> </i:period> </i:context> <i:context id="E23_StEqComps-RetainedEarnings"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2023-12-31</i:instant> </i:period> </i:context> <i:context id="E23_StEqComps-TreasuryStockCommon"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2023-12-31</i:instant> </i:period> </i:context> <i:context id="E24Q1_StEqComps-PrefStock"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2024-03-31</i:instant> </i:period> </i:context> <i:context id="E24Q1_StEqComps-CommonStock"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2024-03-31</i:instant> </i:period> </i:context> <i:context id="E24Q1_StEqComps-AddPaidInCap"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2024-03-31</i:instant> </i:period> </i:context> <i:context id="E24Q1_StEqComps-RetainedEarnings"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2024-03-31</i:instant> </i:period> </i:context> <i:context id="E24Q1_StEqComps-TreasuryStockCommon"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2024-03-31</i:instant> </i:period> </i:context> <i:context id="E22"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> </i:entity> <i:period> <i:instant>2022-12-31</i:instant> </i:period> </i:context> <i:context id="E22_StEqComps-PrefStock"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2022-12-31</i:instant> </i:period> </i:context> <i:context id="E22_StEqComps-CommonStock"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2022-12-31</i:instant> </i:period> </i:context> <i:context id="E22_StEqComps-AddPaidInCap"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2022-12-31</i:instant> </i:period> </i:context> <i:context id="E22_StEqComps-RetainedEarnings"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2022-12-31</i:instant> </i:period> </i:context> <i:context id="E22_StEqComps-TreasuryStockCommon"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2022-12-31</i:instant> </i:period> </i:context> <i:context id="Y23Q1_StEqComps-RetainedEarnings"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2023-01-01</i:startDate> <i:endDate>2023-03-31</i:endDate> </i:period> </i:context> <i:context id="E23Q1"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> </i:entity> <i:period> <i:instant>2023-03-31</i:instant> </i:period> </i:context> <i:context id="E23Q1_StEqComps-PrefStock"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2023-03-31</i:instant> </i:period> </i:context> <i:context id="E23Q1_StEqComps-CommonStock"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2023-03-31</i:instant> </i:period> </i:context> <i:context id="E23Q1_StEqComps-AddPaidInCap"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2023-03-31</i:instant> </i:period> </i:context> <i:context id="E23Q1_StEqComps-RetainedEarnings"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2023-03-31</i:instant> </i:period> </i:context> <i:context id="E23Q1_StEqComps-TreasuryStockCommon"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2023-03-31</i:instant> </i:period> </i:context> <i:context id="Y24Q1_ProductOrService-EndMarket"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:EndMarketMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2024-01-01</i:startDate> <i:endDate>2024-03-31</i:endDate> </i:period> </i:context> <i:context id="Y24Q1_StBusnSeg-Fastener"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2024-01-01</i:startDate> <i:endDate>2024-03-31</i:endDate> </i:period> </i:context> <i:context id="Y24Q1_StBusnSeg-AssemblyEquipment"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2024-01-01</i:startDate> <i:endDate>2024-03-31</i:endDate> </i:period> </i:context> <i:context id="Y24Q1_ProductOrService-Automotive"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:AutomotiveMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2024-01-01</i:startDate> <i:endDate>2024-03-31</i:endDate> </i:period> </i:context> <i:context id="Y24Q1_ProductOrService-Automotive_StBusnSeg-Fastener"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:AutomotiveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2024-01-01</i:startDate> <i:endDate>2024-03-31</i:endDate> </i:period> </i:context> <i:context id="Y24Q1_ProductOrService-Automotive_StBusnSeg-AssemblyEquipment"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:AutomotiveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2024-01-01</i:startDate> <i:endDate>2024-03-31</i:endDate> </i:period> </i:context> <i:context id="Y24Q1_ProductOrService-Nonautomotive"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:NonautomotiveMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2024-01-01</i:startDate> <i:endDate>2024-03-31</i:endDate> </i:period> </i:context> <i:context id="Y24Q1_ProductOrService-Nonautomotive_StBusnSeg-Fastener"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:NonautomotiveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2024-01-01</i:startDate> <i:endDate>2024-03-31</i:endDate> </i:period> </i:context> <i:context id="Y24Q1_ProductOrService-Nonautomotive_StBusnSeg-AssemblyEquipment"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:NonautomotiveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2024-01-01</i:startDate> <i:endDate>2024-03-31</i:endDate> </i:period> </i:context> <i:context id="Y23Q1_ProductOrService-Automotive"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:AutomotiveMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2023-01-01</i:startDate> <i:endDate>2023-03-31</i:endDate> </i:period> </i:context> <i:context id="Y23Q1_ProductOrService-Automotive_StBusnSeg-Fastener"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:AutomotiveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2023-01-01</i:startDate> <i:endDate>2023-03-31</i:endDate> </i:period> </i:context> <i:context id="Y23Q1_ProductOrService-Automotive_StBusnSeg-AssemblyEquipment"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:AutomotiveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2023-01-01</i:startDate> <i:endDate>2023-03-31</i:endDate> </i:period> </i:context> <i:context id="Y23Q1_ProductOrService-Nonautomotive"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:NonautomotiveMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2023-01-01</i:startDate> <i:endDate>2023-03-31</i:endDate> </i:period> </i:context> <i:context id="Y23Q1_ProductOrService-Nonautomotive_StBusnSeg-Fastener"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:NonautomotiveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2023-01-01</i:startDate> <i:endDate>2023-03-31</i:endDate> </i:period> </i:context> <i:context id="Y23Q1_ProductOrService-Nonautomotive_StBusnSeg-AssemblyEquipment"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:NonautomotiveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2023-01-01</i:startDate> <i:endDate>2023-03-31</i:endDate> </i:period> </i:context> <i:context id="Y23Q1_StBusnSeg-Fastener"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2023-01-01</i:startDate> <i:endDate>2023-03-31</i:endDate> </i:period> </i:context> <i:context id="Y23Q1_StBusnSeg-AssemblyEquipment"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2023-01-01</i:startDate> <i:endDate>2023-03-31</i:endDate> </i:period> </i:context> <i:context id="Y24Q1_StGeo-Location"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:LocationMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2024-01-01</i:startDate> <i:endDate>2024-03-31</i:endDate> </i:period> </i:context> <i:context id="Y24Q1_StGeo-US"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2024-01-01</i:startDate> <i:endDate>2024-03-31</i:endDate> </i:period> </i:context> <i:context id="Y24Q1_StGeo-US_StBusnSeg-Fastener"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2024-01-01</i:startDate> <i:endDate>2024-03-31</i:endDate> </i:period> </i:context> <i:context id="Y24Q1_StGeo-US_StBusnSeg-AssemblyEquipment"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2024-01-01</i:startDate> <i:endDate>2024-03-31</i:endDate> </i:period> </i:context> <i:context id="Y24Q1_StGeo-NonUs"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2024-01-01</i:startDate> <i:endDate>2024-03-31</i:endDate> </i:period> </i:context> <i:context id="Y24Q1_StGeo-NonUs_StBusnSeg-Fastener"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2024-01-01</i:startDate> <i:endDate>2024-03-31</i:endDate> </i:period> </i:context> <i:context id="Y24Q1_StGeo-NonUs_StBusnSeg-AssemblyEquipment"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2024-01-01</i:startDate> <i:endDate>2024-03-31</i:endDate> </i:period> </i:context> <i:context id="Y23Q1_StGeo-US"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2023-01-01</i:startDate> <i:endDate>2023-03-31</i:endDate> </i:period> </i:context> <i:context id="Y23Q1_StGeo-US_StBusnSeg-Fastener"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2023-01-01</i:startDate> <i:endDate>2023-03-31</i:endDate> </i:period> </i:context> <i:context id="Y23Q1_StGeo-US_StBusnSeg-AssemblyEquipment"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2023-01-01</i:startDate> <i:endDate>2023-03-31</i:endDate> </i:period> </i:context> <i:context id="Y23Q1_StGeo-NonUs"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2023-01-01</i:startDate> <i:endDate>2023-03-31</i:endDate> </i:period> </i:context> <i:context id="Y23Q1_StGeo-NonUs_StBusnSeg-Fastener"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2023-01-01</i:startDate> <i:endDate>2023-03-31</i:endDate> </i:period> </i:context> <i:context id="Y23Q1_StGeo-NonUs_StBusnSeg-AssemblyEquipment"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2023-01-01</i:startDate> <i:endDate>2023-03-31</i:endDate> </i:period> </i:context> <i:context id="Y24Q1_StBusnSeg-Corporate"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2024-01-01</i:startDate> <i:endDate>2024-03-31</i:endDate> </i:period> </i:context> <i:context id="E24Q1_StBusnSeg-Fastener"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2024-03-31</i:instant> </i:period> </i:context> <i:context id="E24Q1_StBusnSeg-AssemblyEquipment"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2024-03-31</i:instant> </i:period> </i:context> <i:context id="E24Q1_StBusnSeg-Corporate"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2024-03-31</i:instant> </i:period> </i:context> <i:context id="Y23Q1_StBusnSeg-Corporate"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2023-01-01</i:startDate> <i:endDate>2023-03-31</i:endDate> </i:period> </i:context> <i:context id="E23Q1_StBusnSeg-Fastener"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2023-03-31</i:instant> </i:period> </i:context> <i:context id="E23Q1_StBusnSeg-AssemblyEquipment"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2023-03-31</i:instant> </i:period> </i:context> <i:context id="E23Q1_StBusnSeg-Corporate"> <i:entity> <i:identifier scheme="http://www.sec.gov/CIK">0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2023-03-31</i:instant> </i:period> </i:context> <i:unit id="USD"> <i:measure>iso4217:USD</i:measure> </i:unit> <i:unit id="Shares"> <i:measure>xbrli:shares</i:measure> </i:unit> <i:unit id="UsdPerShare"> <i:divide> <i:unitNumerator> <i:measure>iso4217:USD</i:measure> </i:unitNumerator> <i:unitDenominator> <i:measure>xbrli:shares</i:measure> </i:unitDenominator> </i:divide> </i:unit> </ix:resources> </ix:header> </div> <div><p style="font:12pt Times New Roman;margin:0;text-align:center">&#160;</p> <p style="font:12pt Times New Roman;margin:0;text-align:center"><b>UNITED STATES</b></p> <p style="font:12pt Times New Roman;margin:0;text-align:center"><b>SECURITIES AND EXCHANGE COMMISSION</b></p> <p style="font:10pt Times New Roman;margin:0;text-align:center"><b>WASHINGTON, DC 20549</b></p> <p style="font:10pt Times New Roman;margin:0;text-align:center"><b>_________________________________</b></p> <p style="font:10pt Times New Roman;margin:0">&#160;</p> <p style="font:12pt Times New Roman;margin:0;text-align:center"><b>FORM <ix:nonNumeric name="dei:DocumentType" contextRef="Y24Q1" escape="true" id="ixv-3322">10-Q</ix:nonNumeric></b></p> <p style="font:10pt Times New Roman;margin:0;text-align:center"><b>_________________________________</b></p> <p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p> <p style="font:10pt Times New Roman;margin:0;text-align:center">(Mark One)</p> <p style="font:10pt Times New Roman;margin:0">&#160;</p> <p style="font:10pt Times New Roman;margin:0;text-align:center"><span style="font-size:11pt"><span style="font-family:Wingdings">&#253;</span></span> &#160;QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</p> <p style="font:10pt Times New Roman;margin:0">&#160;</p> <p style="font:10pt Times New Roman;margin:0;text-align:center"><b>For the quarterly period ended </b><ix:nonNumeric name="dei:DocumentPeriodEndDate" contextRef="Y24Q1" format="ixt:date-monthname-day-year-en" id="ixv-3323">March 31, 2024</ix:nonNumeric></p> <p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p> <p style="font:10pt Times New Roman;margin:0;text-align:center">OR</p> <p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p> <p style="font:10pt Times New Roman;margin:0;text-align:center"><span style="font-size:11pt"><span style="font-family:Wingdings">o</span></span> &#160;TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</p> <p style="font:10pt Times New Roman;margin:0">&#160;</p> <p style="font:10pt Times New Roman;margin:0;text-align:center">For the transition period from ____________ to ___________</p> <p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p> <p style="font:10pt Times New Roman;margin:0;text-align:center"><b>Commission file number </b><ix:nonNumeric name="dei:EntityFileNumber" contextRef="Y24Q1" escape="true" id="ixv-3324">000-01227</ix:nonNumeric></p> <p style="font:10pt Times New Roman;margin:0;text-align:center"><b>_________________________________</b></p> <p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p> <p style="font:12pt Times New Roman;margin:0;text-align:center"><span style="-sec-ix-hidden:fact3"><span style="font-size:16pt"><b>Chicago Rivet &amp; Machine Co.</b></span></span></p> <p style="font:10pt Times New Roman;margin:0;text-align:center">(Exact Name of Registrant as Specified in Its Charter)</p> <p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
<table style="margin:0 auto;border-collapse:collapse">
<tr>
<td valign="bottom" style="width:189pt;padding-left:2pt;padding-right:2pt"><p style="font:11pt Times New Roman;margin:0;text-align:center"><span style="border-bottom:1px solid #000000">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonNumeric name="dei:EntityIncorporationStateCountryCode" contextRef="Y24Q1" format="ixt-sec:stateprovnameen" id="ixv-3325">Illinois</ix:nonNumeric>&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span><br/>(State or other jurisdiction<br/>of incorporation or organization)</p> </td>
<td valign="bottom" style="width:198pt;padding-left:2pt;padding-right:2pt"><p style="font:11pt Times New Roman;margin:0;text-align:center"><span style="border-bottom:1px solid #000000">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span><ix:nonNumeric name="dei:EntityTaxIdentificationNumber" contextRef="Y24Q1" escape="true" id="ixv-3326">36-0904920</ix:nonNumeric><span style="border-bottom:1px solid #000000">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span><br/>(I.R.S. Employer<br/>Identification Number)</p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="margin:0 auto;border-collapse:collapse">
<tr>
<td valign="bottom" style="width:201.6pt"><p style="font:10pt Times New Roman;margin:0;text-align:center"><b><ix:nonNumeric name="dei:EntityAddressAddressLine1" contextRef="Y24Q1" escape="true" id="ixv-3327">901 Frontenac Road</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressCityOrTown" contextRef="Y24Q1" escape="true" id="ixv-3328">Naperville</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressStateOrProvince" contextRef="Y24Q1" format="ixt-sec:stateprovnameen" id="ixv-3329">Illinois</ix:nonNumeric></b></p> </td>
<td valign="bottom" style="width:93.6pt"><p style="font:10pt Times New Roman;margin:0;text-align:center"><b><ix:nonNumeric name="dei:EntityAddressPostalZipCode" contextRef="Y24Q1" escape="true" id="ixv-3330">60563</ix:nonNumeric></b></p> </td></tr>
<tr>
<td valign="bottom" style="width:201.6pt"><p style="font:10pt Times New Roman;margin:0;text-align:center">(Address of Principal Executive Offices)</p> </td>
<td valign="bottom" style="width:93.6pt"><p style="font:10pt Times New Roman;margin:0;text-align:center">(Zip Code)</p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0">&#160;</p> <p style="font:10pt Times New Roman;margin:0;text-align:center"><b>(<ix:nonNumeric name="dei:CityAreaCode" contextRef="Y24Q1" escape="true" id="ixv-3331">630</ix:nonNumeric>) <ix:nonNumeric name="dei:LocalPhoneNumber" contextRef="Y24Q1" escape="true" id="ixv-3332">357-8500</ix:nonNumeric></b></p> <p style="font:10pt Times New Roman;margin:0;text-align:center"><b>Registrant&#8217;s Telephone Number, Including Area Code</b></p> <p style="font:10pt Times New Roman;margin:0;text-align:center"><b>_________________________________</b></p> <p style="font:10pt Times New Roman;margin:0">&#160;</p> <p style="font:10pt Times New Roman;margin:0;text-align:center">Securities registered pursuant to Section 12(b) of the Act:</p>
<table style="margin:0 auto;border-collapse:collapse">
<tr>
<td valign="top" style="width:183.6pt;border:0.5pt solid #000000"><p style="font:10pt Times New Roman;margin:0">Title of each class</p> </td>
<td valign="top" style="width:105.3pt;border:0.5pt solid #000000"><p style="font:10pt Times New Roman;margin:0;text-align:center">Trading Symbol(s)</p> </td>
<td valign="top" style="width:261.9pt;border:0.5pt solid #000000"><p style="font:10pt Times New Roman;margin:0">Name of each exchange on which registered</p> </td></tr>
<tr>
<td valign="top" style="width:183.6pt;border:0.5pt solid #000000"><p style="font:10pt Times New Roman;margin:0"><ix:nonNumeric name="dei:Security12bTitle" contextRef="Y24Q1" escape="true" id="ixv-3333">Common Stock, par value $1.00 per share</ix:nonNumeric></p> </td>
<td valign="top" style="width:105.3pt;border:0.5pt solid #000000"><p style="font:10pt Times New Roman;margin:0;text-align:center"><ix:nonNumeric name="dei:TradingSymbol" contextRef="Y24Q1" escape="true" id="ixv-3334">CVR</ix:nonNumeric></p> </td>
<td valign="top" style="width:261.9pt;border:0.5pt solid #000000"><p style="font:10pt Times New Roman;margin:0"><span style="-sec-ix-hidden:fact4">NYSE American</span> &#160;(Trading privileges only, not registered)</p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0">&#160;</p> <p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:18pt"></kbd>Indicate by check mark whether the registrant: (1) has 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 the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days. &#160;<ix:nonNumeric name="dei:EntityCurrentReportingStatus" contextRef="Y24Q1" id="ixv-3335">Yes</ix:nonNumeric> <span style="font-size:11pt"><span style="font-family:Wingdings">&#253;</span></span> &#160;No <span style="font-size:11pt"><span style="font-family:Wingdings">o</span></span>&#160;</p> <p style="font:10pt Times New Roman;margin:0">&#160;</p> <p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:18pt"></kbd>Indicate by check mark whether the registrant has submitted electronically, every interactive data file required to be submitted pursuant to Rule 405 of Regulation S-T (section 232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files). &#160;<ix:nonNumeric name="dei:EntityInteractiveDataCurrent" contextRef="Y24Q1" id="ixv-3336">Yes</ix:nonNumeric> <span style="font-size:11pt"><span style="font-family:Wingdings">&#253;</span></span> &#160;No <span style="font-size:11pt"><span style="font-family:Wingdings">o</span></span>&#160;</p> <p style="font:10pt Times New Roman;margin:0">&#160;</p> <p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:18pt"></kbd>Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company, or an emerging growth company. &#160;See the definitions of &#8220;large accelerated filer,&#8221; &#8220;accelerated filer,&#8221; &#8220;smaller reporting company&#8221; and &#8220;emerging growth company&#8221; in Rule 12b-2 of the Exchange Act.:&#160;</p> <p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;margin-left:36pt">
<tr>
<td valign="top" style="width:180pt"><p style="font:10pt Times New Roman;margin:0">Large accelerated filer &#160;<span style="font-size:11pt"><span style="font-family:Wingdings">o</span></span></p> </td>
<td valign="top" style="width:180pt"><p style="font:10pt Times New Roman;margin:0">Accelerated filer &#160;<span style="font-size:11pt"><span style="font-family:Wingdings">o</span></span></p> </td></tr>
<tr>
<td valign="top" style="width:180pt"><p style="font:10pt Times New Roman;margin:0"><ix:nonNumeric name="dei:EntityFilerCategory" contextRef="Y24Q1" format="ixt-sec:entityfilercategoryen" id="ixv-3337">Non-accelerated filer</ix:nonNumeric> &#160;&#160;&#160;<span style="font-size:11pt"><span style="font-family:Wingdings">&#253;</span></span></p> </td>
<td valign="top" style="width:180pt"><p style="font:10pt Times New Roman;margin:0">Smaller reporting company &#160;<ix:nonNumeric name="dei:EntitySmallBusiness" contextRef="Y24Q1" format="ixt-sec:boolballotbox" id="ixv-3338">&#9746;</ix:nonNumeric><span style="font-size:11pt"> </span></p> </td></tr>
<tr>
<td valign="top" style="width:180pt"><p style="font:10pt Times New Roman;margin:0">&#160;</p> </td>
<td valign="top" style="width:180pt"><p style="font:10pt Times New Roman;margin:0">Emerging growth company &#160;<ix:nonNumeric name="dei:EntityEmergingGrowthCompany" contextRef="Y24Q1" format="ixt-sec:boolballotbox" id="ixv-3339">&#9744;</ix:nonNumeric></p> </td></tr> </table> <p style="font:10pt Times New Roman;margin:0">&#160;</p> <p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:18pt"></kbd>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. <ix:nonNumeric name="dei:EntityEmergingGrowthCompany" contextRef="Y24Q1" format="ixt-sec:boolballotbox" id="ixv-3340">&#9744;</ix:nonNumeric> &#160;&#160;</p> <p style="font:10pt Times New Roman;margin:0">&#160;</p> <p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:18pt"></kbd>Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act). Yes <ix:nonNumeric name="dei:EntityShellCompany" contextRef="Y24Q1" format="ixt-sec:boolballotbox" id="ixv-3341">&#9744;</ix:nonNumeric> &#160;No <span style="font-size:11pt"><span style="font-family:Wingdings">&#253;</span></span> &#160;&#160;</p> <p style="font:10pt Times New Roman;margin:0">&#160;</p> <p style="font:10pt Times New Roman;margin:0">As of May 8, 2024 there were <ix:nonFraction name="dei:EntityCommonStockSharesOutstanding" contextRef="I240508" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3342">966,132</ix:nonFraction> shares of the registrant&#8217;s common stock outstanding.</p> <p style="font:10pt Times New Roman;margin:0">&#160;</p> <hr style="page-break-after:always;border:0;height:3pt;background-color:#909090;margin:8pt 0"/><p style="line-height:0;margin:0"></p> <p style="font:12pt Arial Narrow;margin:0;color:#339966">&#160;</p> <p style="font:10pt Courier New;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0"><br/><kbd style="position:absolute;font:10pt Times New Roman;margin-left:0pt"><span style="font-family:Times New Roman"> </span></kbd><kbd style="margin-left:144pt"></kbd>CHICAGO RIVET &amp; MACHINE CO.&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0;text-indent:36pt;margin-left:180pt">INDEX</p> <p style="font:10pt Arial;margin:0;text-align:center">&#160;</p>
<table style="border-collapse:collapse">
<tr>
<td colspan="2" valign="bottom" style="width:463.5pt"><p style="font:10pt Arial;margin:0">PART I. &#160;&#160;&#160;&#160;FINANCIAL INFORMATION (Unaudited)</p> </td>
<td valign="bottom" style="width:45pt"><p style="font:10pt Arial;margin:0;text-align:center">Page</p> </td></tr>
<tr style="height:36pt">
<td valign="bottom" style="width:49.5pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:414pt"><p style="font:10pt Arial;margin:0"><span style="color:#0000FF;border-bottom:1px solid #0000FF"><a href="#a3" style="text-decoration:none">Condensed Consolidated Balance Sheets at</a></span><br/><span style="color:#0000FF"><a href="#a3" style="text-decoration:none"> &#160;&#160;&#160;&#160;</a></span><span style="color:#0000FF;border-bottom:1px solid #0000FF"><a href="#a3" style="text-decoration:none">March 31</a><a href="#a3" style="text-decoration:none">, 202</a><a href="#a3" style="text-decoration:none">4</a><a href="#a3" style="text-decoration:none"> and December 31, 202</a>3</span></p> </td>
<td valign="bottom" style="width:45pt"><p style="font:10pt Arial;margin:0;text-align:center">2</p> </td></tr>
<tr style="height:36pt">
<td valign="bottom" style="width:49.5pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:414pt"><p style="font:10pt Arial;margin:0"><span style="color:#0000FF;border-bottom:1px solid #0000FF"><a href="#a4" style="text-decoration:none">Condensed Consolidated Statements of </a><a href="#a4" style="text-decoration:none">Operations</a><a href="#a4" style="text-decoration:none"> for the</a></span><br/><span style="color:#0000FF"><a href="#a4" style="text-decoration:none"> &#160;&#160;&#160;&#160;</a></span><span style="color:#0000FF;border-bottom:1px solid #0000FF"><a href="#a4" style="text-decoration:none">Three</a><a href="#a4" style="text-decoration:none"> </a><a href="#a4" style="text-decoration:none">Months Ended </a><a href="#a4" style="text-decoration:none">March 31</a><a href="#a4" style="text-decoration:none">, 202</a><a href="#a4" style="text-decoration:none">4</a><a href="#a4" style="text-decoration:none"> and 202</a>3</span></p> </td>
<td valign="bottom" style="width:45pt"><p style="font:10pt Arial;margin:0;text-align:center">3</p> </td></tr>
<tr style="height:36pt">
<td valign="bottom" style="width:49.5pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:414pt"><p style="font:10pt Arial;margin:0"><span style="color:#0000FF;border-bottom:1px solid #0000FF"><a href="#a5" style="text-decoration:none">Condensed Consolidated Statements of Shareholders&#8217; Equity for the</a></span><br/><span style="color:#0000FF"><a href="#a5" style="text-decoration:none"> &#160;&#160;&#160;&#160;</a></span><span style="color:#0000FF;border-bottom:1px solid #0000FF"><a href="#a5" style="text-decoration:none">Three</a><a href="#a5" style="text-decoration:none"> </a><a href="#a5" style="text-decoration:none">Months Ended </a><a href="#a5" style="text-decoration:none">March 31</a><a href="#a5" style="text-decoration:none">, 202</a><a href="#a5" style="text-decoration:none">4</a><a href="#a5" style="text-decoration:none"> and 202</a>3</span></p> </td>
<td valign="bottom" style="width:45pt"><p style="font:10pt Arial;margin:0;text-align:center">4</p> </td></tr>
<tr style="height:36pt">
<td valign="bottom" style="width:49.5pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:414pt"><p style="font:10pt Arial;margin:0"><span style="color:#0000FF;border-bottom:1px solid #0000FF"><a href="#a6" style="text-decoration:none">Condensed Consolidated Statements of Cash Flows for the</a></span><br/><span style="color:#0000FF"><a href="#a6" style="text-decoration:none"> &#160;&#160;&#160;&#160;</a></span><span style="color:#0000FF;border-bottom:1px solid #0000FF"><a href="#a6" style="text-decoration:none">Three</a><a href="#a6" style="text-decoration:none"> Months Ended </a><a href="#a6" style="text-decoration:none">March 31</a><a href="#a6" style="text-decoration:none">, 202</a><a href="#a6" style="text-decoration:none">4</a><a href="#a6" style="text-decoration:none"> and 202</a>3</span></p> </td>
<td valign="bottom" style="width:45pt"><p style="font:10pt Arial;margin:0;text-align:center">5</p> </td></tr>
<tr style="height:21.6pt">
<td valign="bottom" style="width:49.5pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:414pt"><p style="font:10pt Arial;margin:0"><span style="color:#0000FF;border-bottom:1px solid #0000FF"><a href="#a7" style="text-decoration:none">Notes to the Condensed Consolidated Financial Statements</a></span></p> </td>
<td valign="bottom" style="width:45pt"><p style="font:10pt Arial;margin:0;text-align:center">6</p> </td></tr>
<tr style="height:21.6pt">
<td valign="bottom" style="width:49.5pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:414pt"><p style="font:10pt Arial;margin:0"><span style="color:#0000FF;border-bottom:1px solid #0000FF"><a href="#a8" style="text-decoration:none">Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</a></span></p> </td>
<td valign="bottom" style="width:45pt"><p style="font:10pt Arial;margin:0;text-align:center">10</p> </td></tr>
<tr style="height:21.6pt">
<td valign="bottom" style="width:49.5pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:414pt"><p style="font:10pt Arial;margin:0"><span style="color:#0000FF;border-bottom:1px solid #0000FF"><a href="#a9" style="text-decoration:none">Controls and Procedures</a></span></p> </td>
<td valign="bottom" style="width:45pt"><p style="font:10pt Arial;margin:0;text-align:center">11</p> </td></tr>
<tr style="height:21.6pt">
<td colspan="2" valign="bottom" style="width:463.5pt"><p style="font:10pt Arial;margin:0">PART II. &#160;&#160;&#160;&#160;<span style="color:#0000FF;border-bottom:1px solid #0000FF"><a href="#a10" style="text-decoration:none">OTHER INFORMATION</a></span></p> </td>
<td valign="bottom" style="width:45pt"><p style="font:10pt Arial;margin:0;text-align:center">12</p> </td></tr> </table> <hr style="border:0;height:0;width:0;margin:14pt 0 0 0"/><p style="font:10pt Times New Roman;margin:0;text-align:center">1</p> <hr style="page-break-after:always;border:0;height:3pt;background-color:#909090;margin:8pt 0"/><p style="line-height:0;margin:0"></p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">PART I &#8211;&#160;FINANCIAL INFORMATION</p> <p style="font:10pt Arial;margin:0">&#160;</p> <a id="a3"></a><p style="font:10pt Arial;margin:0">Item 1. Financial Statements.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p>
<table style="border-collapse:collapse">
<tr>
<td colspan="4" valign="bottom" style="background-color:#CADFF9;width:540pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:center">CHICAGO RIVET &amp; MACHINE CO.</p> </td></tr>
<tr>
<td colspan="4" valign="bottom" style="width:540pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:center">Condensed Consolidated Balance Sheets</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:center">March 31, 2024 (Unaudited)</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:center">December 31, 2023</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:center">Assets</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:center">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000"><p style="font:9pt Arial;margin:0">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:center">&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Current Assets:</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Cash and cash equivalents</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3343">1,291,132</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3344">1,387,075</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Short-term investments</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:ShortTermInvestments" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3345">1,374,956</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:ShortTermInvestments" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3346">1,771,120</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000"> &#160;Accounts receivable - Less allowances of $160,000</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3347">5,463,717</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3348">4,275,882</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000"> &#160;Contract assets</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNetCurrent" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3349">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNetCurrent" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3350">118,301</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Inventories, net</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3351">6,746,675</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3352">7,327,653</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Income taxes receivable</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PrepaidTaxes" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3353">534,224</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PrepaidTaxes" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3354">580,287</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Other current assets</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:OtherAssetsCurrent" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3355">504,958</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:OtherAssetsCurrent" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3356">380,562</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Total current assets</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:AssetsCurrent" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3357">15,915,662</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:AssetsCurrent" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3358">15,840,880</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Property, Plant and Equipment:</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Land and improvements</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:LandAndLandImprovements" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3359">1,510,513</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:LandAndLandImprovements" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3360">1,510,513</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Buildings and improvements</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:BuildingsAndImprovementsGross" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3361">6,835,619</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:BuildingsAndImprovementsGross" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3362">6,835,619</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Production equipment and other</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:MachineryAndEquipmentGross" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3363">37,724,746</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:MachineryAndEquipmentGross" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3364">37,952,902</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3365">46,070,878</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3366">46,299,034</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Less accumulated depreciation</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3367">34,695,580</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3368">34,633,952</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Net property, plant and equipment</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3369">11,375,298</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3370">11,665,082</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Deferred income taxes, net</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxAssetsNet" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3371">501,773</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxAssetsNet" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3372">324,943</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr style="height:14.4pt">
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Total assets</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;<ix:nonFraction name="us-gaap:Assets" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3373">27,792,733</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;<ix:nonFraction name="us-gaap:Assets" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3374">27,830,905</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:center">Liabilities and Shareholders' Equity</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Current Liabilities:</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Accounts payable</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160; &#160;&#160; &#160;<ix:nonFraction name="us-gaap:AccountsPayableCurrent" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3375">1,388,599</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:AccountsPayableCurrent" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3376">788,974</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Accrued wages and salaries</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:EmployeeRelatedLiabilitiesCurrent" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3377">634,373</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:EmployeeRelatedLiabilitiesCurrent" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3378">514,900</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Other accrued expenses</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3379">313,112</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3380">129,963</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Unearned revenue and customer deposits</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:CustomerAdvancesAndDepositsCurrent" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3381">284,377</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:CustomerAdvancesAndDepositsCurrent" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3382">430,179</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Total current liabilities</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3383">2,620,461</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3384">1,864,016</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Total liabilities</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:Liabilities" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3385">2,620,461</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:Liabilities" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3386">1,864,016</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Commitments and contingencies (Note 3)</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Shareholders' Equity:</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;&#160;&#160;Preferred stock, <ix:nonFraction name="us-gaap:PreferredStockParOrStatedValuePerShare" contextRef="E24Q1" decimals="INF" unitRef="UsdPerShare" format="ixt:fixed-zero" id="ixv-3387"><ix:nonFraction name="us-gaap:PreferredStockParOrStatedValuePerShare" contextRef="E23" decimals="INF" unitRef="UsdPerShare" format="ixt:fixed-zero" id="ixv-3388">no</ix:nonFraction></ix:nonFraction> par value, <ix:nonFraction name="us-gaap:PreferredStockSharesAuthorized" contextRef="E24Q1" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3389"><ix:nonFraction name="us-gaap:PreferredStockSharesAuthorized" contextRef="E23" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3390">500,000</ix:nonFraction></ix:nonFraction> shares authorized: <ix:nonFraction name="us-gaap:PreferredStockSharesOutstanding" contextRef="E24Q1" decimals="INF" unitRef="Shares" format="ixt-sec:numwordsen" id="ixv-3391"><ix:nonFraction name="us-gaap:PreferredStockSharesOutstanding" contextRef="E23" decimals="INF" unitRef="Shares" format="ixt-sec:numwordsen" id="ixv-3392">none</ix:nonFraction></ix:nonFraction> outstanding</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PreferredStockValue" contextRef="E24Q1" decimals="128" unitRef="USD" format="ixt:fixed-zero" id="ixv-3393">-</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PreferredStockValue" contextRef="E23" decimals="128" unitRef="USD" format="ixt:fixed-zero" id="ixv-3394">-</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"><span style="color:#00B050"> &#160;&#160;&#160;</span>Common stock,<span style="color:#7030A0"> </span>$<ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" contextRef="E24Q1" decimals="INF" unitRef="UsdPerShare" scale="0" format="ixt:num-dot-decimal" id="ixv-3395"><ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" contextRef="E23" decimals="INF" unitRef="UsdPerShare" scale="0" format="ixt:num-dot-decimal" id="ixv-3396">1.00</ix:nonFraction></ix:nonFraction> par value, <ix:nonFraction name="us-gaap:CommonStockSharesAuthorized" contextRef="E24Q1" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3397"><ix:nonFraction name="us-gaap:CommonStockSharesAuthorized" contextRef="E23" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3398">4,000,000</ix:nonFraction></ix:nonFraction> shares authorized, <ix:nonFraction name="us-gaap:CommonStockSharesIssued" contextRef="E24Q1" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3399"><ix:nonFraction name="us-gaap:CommonStockSharesIssued" contextRef="E23" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3400">1,138,096</ix:nonFraction></ix:nonFraction> shares issued; <ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" contextRef="E24Q1" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3401"><ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" contextRef="E23" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3402">966,132</ix:nonFraction></ix:nonFraction><span style="color:#0070C0"> </span>shares outstanding</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:CommonStockValueOutstanding" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3403">1,138,096</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:CommonStockValueOutstanding" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3404">1,138,096</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;&#160;Additional paid-in capital</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:AdditionalPaidInCapital" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3405">447,134</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:AdditionalPaidInCapital" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3406">447,134</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;&#160;Retained earnings</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:RetainedEarningsAccumulatedDeficit" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3407">27,509,140</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:RetainedEarningsAccumulatedDeficit" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3408">28,303,757</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;&#160;Treasury stock, 171,964 shares at cost</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:TreasuryStockValue" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3409">3,922,098</ix:nonFraction>)&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:TreasuryStockValue" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3410">3,922,098</ix:nonFraction>)&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Total shareholders' equity</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3411">25,172,272</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3412">25,966,889</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr style="height:14.4pt">
<td valign="bottom" style="width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Total liabilities and shareholders' equity</p> </td>
<td valign="bottom" style="width:76.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;<ix:nonFraction name="us-gaap:LiabilitiesAndStockholdersEquity" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3413">27,792,733</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;<ix:nonFraction name="us-gaap:LiabilitiesAndStockholdersEquity" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3414">27,830,905</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:373.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:76.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:75.95pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000"><p style="font:9pt Arial;margin:0">&#160;</p> </td></tr>
<tr>
<td colspan="2" valign="bottom" style="width:450pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">See Notes to the Condensed Consolidated Financial Statements</p> </td>
<td valign="bottom" style="width:14.05pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:75.95pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td></tr> </table> <p style="font:10pt Arial;margin:0">&#160;</p> <hr style="border:0;height:0;width:0;margin:14pt 0 0 0"/><p style="font:10pt Times New Roman;margin:0;text-align:center">2</p> <hr style="page-break-after:always;border:0;height:3pt;background-color:#909090;margin:8pt 0"/><p style="line-height:0;margin:0"></p> <p style="font:10pt Arial;margin:0">&#160;</p> <a id="a4"></a><p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p>
<table style="border-collapse:collapse">
<tr>
<td colspan="4" valign="bottom" style="background-color:#CEE7FF;width:387pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0;text-align:center"><span style="font-family:Arial">CHICAGO RIVET &amp; MACHINE CO.</span></p> </td></tr>
<tr>
<td colspan="4" valign="bottom" style="width:387pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0;text-align:center"><span style="font-family:Arial">Condensed Consolidated Statements of Operations (Unaudited)</span></p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:center">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:74.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:73.75pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0">&#160;</p> </td></tr>
<tr style="height:45.45pt">
<td valign="bottom" style="width:234pt;padding-left:2pt;padding-right:2pt"/>
<td valign="middle" style="width:74.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:center">Three Months Ended March 31, 2024</p> </td>
<td valign="bottom" style="width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:center">&#160;</p> </td>
<td valign="middle" style="width:73.75pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:center">Three Months Ended March 31, 2023</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Net sales</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:74.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">$&#160; &#160;&#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:Revenues" contextRef="Y24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3415">7,853,181</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:73.75pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:Revenues" contextRef="Y23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3416">8,729,725</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Cost of goods sold </p> </td>
<td valign="bottom" style="width:74.25pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:CostOfRevenue" contextRef="Y24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3417">7,108,619</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:73.75pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:CostOfRevenue" contextRef="Y23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3418">8,252,222</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:74.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:73.75pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Gross profit</p> </td>
<td valign="bottom" style="width:74.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:GrossProfit" contextRef="Y24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3419">744,562</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:73.75pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:GrossProfit" contextRef="Y23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3420">477,503</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Selling and administrative expenses</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:74.25pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:OperatingExpenses" contextRef="Y24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3421">1,647,865</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:73.75pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:OperatingExpenses" contextRef="Y23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3422">1,257,695</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:74.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:73.75pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Operating loss </p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:74.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="Y24Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3423">903,303</ix:nonFraction>)&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:73.75pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="Y23Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3424">780,192</ix:nonFraction>)&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:74.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:73.75pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Other income</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:74.25pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:OtherNonoperatingIncomeExpense" contextRef="Y24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3425">28,469</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:73.75pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:OtherNonoperatingIncomeExpense" contextRef="Y23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3426">43,055</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:74.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:73.75pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr style="height:5.85pt">
<td valign="bottom" style="background-color:#CEE7FF;width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Loss before income taxes</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:74.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" contextRef="Y24Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3427">874,834</ix:nonFraction>)&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:73.75pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" contextRef="Y23Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3428">737,137</ix:nonFraction>)&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Benefit for income taxes</p> </td>
<td valign="bottom" style="width:74.25pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="Y24Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3429">176,830</ix:nonFraction>)&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:73.75pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="Y23Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3430">154,000</ix:nonFraction>)&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:74.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:73.75pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Net loss</p> </td>
<td valign="bottom" style="width:74.25pt;padding-left:2pt;padding-right:2pt;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="Y24Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3431">698,004</ix:nonFraction>)&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:73.75pt;padding-left:2pt;padding-right:2pt;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right">$&#160; &#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="Y23Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3432">583,137</ix:nonFraction>)&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:74.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:73.75pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Per share data: </p> </td>
<td valign="bottom" style="width:74.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:73.75pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;&#160;Basic net loss per share </p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:74.25pt;padding-left:2pt;padding-right:2pt;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;(<ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsPerBasicShare" contextRef="Y24Q1" decimals="INF" unitRef="UsdPerShare" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3433">0.72</ix:nonFraction>)&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:73.75pt;padding-left:2pt;padding-right:2pt;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;(<ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsPerBasicShare" contextRef="Y23Q1" decimals="INF" unitRef="UsdPerShare" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3434">0.60</ix:nonFraction>)&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;&#160;Diluted net loss per share </p> </td>
<td valign="bottom" style="width:74.25pt;padding-left:2pt;padding-right:2pt;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;(<ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare" contextRef="Y24Q1" decimals="INF" unitRef="UsdPerShare" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3435">0.72</ix:nonFraction>)&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:73.75pt;padding-left:2pt;padding-right:2pt;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;(<ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare" contextRef="Y23Q1" decimals="INF" unitRef="UsdPerShare" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3436">0.60</ix:nonFraction>)&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:74.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:73.75pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Weighted average common shares outstanding: </p> </td>
<td valign="bottom" style="width:74.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:73.75pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;&#160;Basic </p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:74.25pt;padding-left:2pt;padding-right:2pt;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="Y24Q1" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3437">966,132</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:73.75pt;padding-left:2pt;padding-right:2pt;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="Y23Q1" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3438">966,132</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;&#160;Diluted </p> </td>
<td valign="bottom" style="width:74.25pt;padding-left:2pt;padding-right:2pt;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="Y24Q1" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3439">966,132</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:73.75pt;padding-left:2pt;padding-right:2pt;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="Y23Q1" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3440">966,132</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:74.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:73.75pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Cash dividends declared per share </p> </td>
<td valign="bottom" style="width:74.25pt;padding-left:2pt;padding-right:2pt;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:CommonStockDividendsPerShareDeclared" contextRef="Y24Q1" decimals="INF" unitRef="UsdPerShare" scale="0" format="ixt:num-dot-decimal" id="ixv-3441">0.10</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:73.75pt;padding-left:2pt;padding-right:2pt;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:CommonStockDividendsPerShareDeclared" contextRef="Y23Q1" decimals="INF" unitRef="UsdPerShare" scale="0" format="ixt:num-dot-decimal" id="ixv-3442">0.22</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:74.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:73.75pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:234pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:74.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:73.75pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0">&#160;</p> </td></tr>
<tr>
<td colspan="2" valign="bottom" style="background-color:#CEE7FF;width:308.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> See Notes to the Condensed Consolidated Financial Statements </p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:73.75pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Times New Roman;margin:0">&#160;</p> </td></tr> </table> <p style="font:10pt Arial;margin:0">&#160;</p> <hr style="border:0;height:0;width:0;margin:14pt 0 0 0"/><p style="font:10pt Times New Roman;margin:0;text-align:center">3</p> <hr style="page-break-after:always;border:0;height:3pt;background-color:#909090;margin:8pt 0"/><p style="line-height:0;margin:0"></p> <p style="font:10pt Arial;margin:0">&#160;</p> <a id="a5"></a><p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p>
<table style="border-collapse:collapse">
<tr style="height:6.9pt">
<td colspan="9" valign="top" style="background-color:#CEE7FF"><p style="font:9pt Arial;margin:0;text-align:center">CHICAGO RIVET &amp; MACHINE CO.</p> </td></tr>
<tr style="height:6.9pt">
<td colspan="9" valign="top"><p style="font:9pt Arial;margin:0;text-align:center">Consolidated Statements of Shareholders&#8217; Equity (Unaudited)</p> </td></tr>
<tr style="height:6.9pt">
<td valign="top" style="background-color:#CEE7FF"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="background-color:#CEE7FF;width:54.75pt"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="background-color:#CEE7FF;width:45.75pt"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="background-color:#CEE7FF"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="background-color:#CEE7FF;width:55.6pt"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="background-color:#CEE7FF;width:63pt"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="background-color:#CEE7FF;width:44.7pt"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="background-color:#CEE7FF"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="background-color:#CEE7FF"><p style="font:6pt Arial;margin:0">&#160;</p> </td></tr>
<tr style="height:6.9pt">
<td valign="top"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:54.75pt"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td colspan="2" valign="bottom" style="width:98.85pt;border-bottom:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:center">Common Stock</p> </td>
<td valign="top" style="width:55.6pt"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:63pt"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td colspan="2" valign="bottom" style="width:101pt;border-bottom:0.5pt solid #000000"><p style="font:8pt Arial Narrow;margin:0;text-align:center">Treasury Stock, At Cost</p> </td>
<td valign="top"><p style="font:6pt Arial;margin:0">&#160;</p> </td></tr>
<tr style="height:6.9pt">
<td valign="bottom" style="background-color:#CEE7FF"/>
<td valign="bottom" style="background-color:#CEE7FF;width:54.75pt"><p style="font:7pt Arial;margin:0;text-align:center"><span style="font:8pt Arial Narrow">Preferred Stock Amount</span></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:45.75pt;border-top:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:center"><span style="font:8pt Arial Narrow">Shares</span></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;border-top:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:center"><span style="font:8pt Arial Narrow">Amount</span></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:55.6pt"><p style="font:7pt Arial;margin:0;text-align:center"><span style="font:8pt Arial Narrow">Additional Paid-In Capital</span></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:63pt"><p style="font:7pt Arial;margin:0;text-align:center"><span style="font:8pt Arial Narrow">Retained Earnings</span></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:44.7pt"><p style="font:7pt Arial;margin:0;text-align:center"><span style="font:8pt Arial Narrow">Shares</span></p> </td>
<td valign="bottom" style="background-color:#CEE7FF"><p style="font:7pt Arial;margin:0;text-align:center"><span style="font:8pt Arial Narrow">Amount</span></p> </td>
<td valign="bottom" style="background-color:#CEE7FF"><p style="font:7pt Arial;margin:0;text-align:center"><span style="font:8pt Arial Narrow">Total Shareholders&#8217; Equity</span></p> </td></tr>
<tr style="height:6.9pt">
<td valign="top"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:54.75pt"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:45.75pt"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:55.6pt"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:63pt"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:44.7pt"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top"><p style="font:6pt Arial;margin:0">&#160;</p> </td></tr>
<tr style="height:12.95pt">
<td valign="bottom" style="background-color:#CEE7FF"><p style="font:7pt Arial;margin:0"><span style="font-size:8pt">Balance, December 31, 2023</span></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:54.75pt"><p style="font:8pt Arial;margin:0;text-align:center"> &#160;&#160;&#160;&#160;&#160;&#160;&#160;$ <ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E23_StEqComps-PrefStock" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3443">0</ix:nonFraction></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:45.75pt"><p style="font:7pt Arial;margin:0;text-align:right"><span style="font-size:8pt"><ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" contextRef="E23_StEqComps-CommonStock" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3444">966,132</ix:nonFraction></span></p> </td>
<td valign="bottom" style="background-color:#CEE7FF"><p style="font:8pt Arial;margin:0;text-align:right">$ <ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E23_StEqComps-CommonStock" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3445">1,138,096</ix:nonFraction></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:55.6pt"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E23_StEqComps-AddPaidInCap" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3446">447,134</ix:nonFraction></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:63pt"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E23_StEqComps-RetainedEarnings" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3447">28,303,757</ix:nonFraction></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:44.7pt"><p style="font:7pt Arial;margin:0;text-align:right"><span style="font-size:8pt"><ix:nonFraction name="us-gaap:TreasuryStockCommonShares" contextRef="E23_StEqComps-TreasuryStockCommon" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3448">171,964</ix:nonFraction></span></p> </td>
<td valign="bottom" style="background-color:#CEE7FF"><p style="font:8pt Arial;margin:0;text-align:right">$ (<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E23_StEqComps-TreasuryStockCommon" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3449">3,922,098</ix:nonFraction>)</p> </td>
<td valign="bottom" style="background-color:#CEE7FF"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3450">25,966,889</ix:nonFraction></p> </td></tr>
<tr style="height:12.95pt">
<td valign="bottom"><p style="font:7pt Arial;margin:0"><span style="font-size:8pt">Net loss</span></p> </td>
<td valign="bottom" style="width:54.75pt"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:45.75pt"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:55.6pt"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:63pt"><p style="font:8pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="Y24Q1_StEqComps-RetainedEarnings" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3451">698,004</ix:nonFraction>)</p> </td>
<td valign="bottom" style="width:44.7pt"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="Y24Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3452">698,004</ix:nonFraction>)</p> </td></tr>
<tr style="height:12.95pt">
<td valign="bottom" style="background-color:#CEE7FF"><p style="font:7pt Arial;margin:0"><span style="font-size:8pt">Dividends Declared</span> <span style="font-size:8pt">($<ix:nonFraction name="us-gaap:CommonStockDividendsPerShareDeclared" contextRef="Y24Q1" decimals="INF" unitRef="UsdPerShare" scale="0" format="ixt:num-dot-decimal" id="ixv-3453">0.10</ix:nonFraction></span> <span style="font-size:8pt">per share)</span></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:54.75pt;border-bottom:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:45.75pt;border-bottom:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;border-bottom:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:55.6pt;border-bottom:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:63pt;border-bottom:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:Dividends" contextRef="Y24Q1_StEqComps-RetainedEarnings" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3454">96,613</ix:nonFraction>)</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:44.7pt;border-bottom:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;border-bottom:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;border-bottom:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:Dividends" contextRef="Y24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3455">96,613</ix:nonFraction>)</p> </td></tr>
<tr style="height:12.95pt">
<td valign="bottom"><p style="font:7pt Arial;margin:0"><span style="font-size:8pt">Balance, March 31, 2024</span></p> </td>
<td valign="bottom" style="width:54.75pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:center"> &#160;&#160;&#160;&#160;&#160;&#160;&#160;$ <ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E24Q1_StEqComps-PrefStock" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3456">0</ix:nonFraction></p> </td>
<td valign="bottom" style="width:45.75pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" contextRef="E24Q1_StEqComps-CommonStock" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3457">966,132</ix:nonFraction></p> </td>
<td valign="bottom" style="border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:right">$ <ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E24Q1_StEqComps-CommonStock" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3458">1,138,096</ix:nonFraction></p> </td>
<td valign="bottom" style="width:55.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E24Q1_StEqComps-AddPaidInCap" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3459">447,134</ix:nonFraction></p> </td>
<td valign="bottom" style="width:63pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E24Q1_StEqComps-RetainedEarnings" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3460">27,509,140</ix:nonFraction></p> </td>
<td valign="bottom" style="width:44.7pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right"><span style="font-size:8pt"><ix:nonFraction name="us-gaap:TreasuryStockCommonShares" contextRef="E24Q1_StEqComps-TreasuryStockCommon" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3461">171,964</ix:nonFraction></span></p> </td>
<td valign="bottom" style="border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:right">$ (<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E24Q1_StEqComps-TreasuryStockCommon" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3462">3,922,098</ix:nonFraction>)</p> </td>
<td valign="bottom" style="border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3463">25,172,272</ix:nonFraction></p> </td></tr>
<tr style="height:10.8pt">
<td valign="bottom" style="background-color:#CEE7FF"><p style="font:7pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:54.75pt;border-top:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:45.75pt;border-top:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;border-top:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:55.6pt;border-top:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:63pt;border-top:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:44.7pt;border-top:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;border-top:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;border-top:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr style="height:10.8pt">
<td valign="bottom"><p style="font:7pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:54.75pt"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:45.75pt"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:55.6pt"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:63pt"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:44.7pt"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr style="height:12.95pt">
<td valign="bottom" style="background-color:#CEE7FF"><p style="font:7pt Arial;margin:0"><span style="font-size:8pt">Balance, December 31, 2022</span></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:54.75pt"><p style="font:8pt Arial;margin:0;text-align:center"> &#160;&#160;&#160;&#160;&#160;&#160;&#160;$ <ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E22_StEqComps-PrefStock" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3464">0</ix:nonFraction></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:45.75pt"><p style="font:7pt Arial;margin:0;text-align:right"><span style="font-size:8pt"><ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" contextRef="E22_StEqComps-CommonStock" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3465">966,132</ix:nonFraction></span></p> </td>
<td valign="bottom" style="background-color:#CEE7FF"><p style="font:8pt Arial;margin:0;text-align:right">$ <ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E22_StEqComps-CommonStock" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3466">1,138,096</ix:nonFraction></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:55.6pt"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E22_StEqComps-AddPaidInCap" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3467">447,134</ix:nonFraction></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:63pt"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E22_StEqComps-RetainedEarnings" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3468">33,323,666</ix:nonFraction></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:44.7pt"><p style="font:7pt Arial;margin:0;text-align:right"><span style="font-size:8pt"><ix:nonFraction name="us-gaap:TreasuryStockCommonShares" contextRef="E22_StEqComps-TreasuryStockCommon" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3469">171,964</ix:nonFraction></span></p> </td>
<td valign="bottom" style="background-color:#CEE7FF"><p style="font:8pt Arial;margin:0;text-align:right">$ (<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E22_StEqComps-TreasuryStockCommon" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3470">3,922,098</ix:nonFraction>)</p> </td>
<td valign="bottom" style="background-color:#CEE7FF"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E22" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3471">30,986,798</ix:nonFraction></p> </td></tr>
<tr style="height:12.95pt">
<td valign="bottom"><p style="font:7pt Arial;margin:0"><span style="font-size:8pt">Net loss</span></p> </td>
<td valign="bottom" style="width:54.75pt"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:45.75pt"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:55.6pt"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:63pt"><p style="font:8pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="Y23Q1_StEqComps-RetainedEarnings" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3472">583,137</ix:nonFraction>)</p> </td>
<td valign="bottom" style="width:44.7pt"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="Y23Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3473">583,137</ix:nonFraction>)</p> </td></tr>
<tr style="height:12.95pt">
<td valign="bottom" style="background-color:#CEE7FF"><p style="font:7pt Arial;margin:0"><span style="font-size:8pt">Dividends Declared</span> <span style="font-size:8pt">($<ix:nonFraction name="us-gaap:CommonStockDividendsPerShareDeclared" contextRef="Y23Q1" decimals="INF" unitRef="UsdPerShare" scale="0" format="ixt:num-dot-decimal" id="ixv-3474">0.22</ix:nonFraction></span> <span style="font-size:8pt">per share)</span></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:54.75pt;border-bottom:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:45.75pt;border-bottom:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;border-bottom:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:55.6pt;border-bottom:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:63pt;border-bottom:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:right"><span style="font-size:7pt"> </span>(<ix:nonFraction name="us-gaap:Dividends" contextRef="Y23Q1_StEqComps-RetainedEarnings" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3475">212,549</ix:nonFraction>)</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:44.7pt;border-bottom:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;border-bottom:0.5pt solid #000000"><p style="font:7pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;border-bottom:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:Dividends" contextRef="Y23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3476">212,549</ix:nonFraction>)</p> </td></tr>
<tr style="height:12.95pt">
<td valign="bottom"><p style="font:7pt Arial;margin:0"><span style="font-size:8pt">Balance, March 31, 2023</span></p> </td>
<td valign="bottom" style="width:54.75pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:8pt Arial;margin:0;text-align:center"> &#160;&#160;&#160;&#160;&#160;&#160;&#160;$ <ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E23Q1_StEqComps-PrefStock" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3477">0</ix:nonFraction></p> </td>
<td valign="bottom" style="width:45.75pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:7pt Arial;margin:0;text-align:right"><span style="font-size:8pt"><ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" contextRef="E23Q1_StEqComps-CommonStock" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3478">966,132</ix:nonFraction></span></p> </td>
<td valign="bottom" style="border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:8pt Arial;margin:0;text-align:right">$ <ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E23Q1_StEqComps-CommonStock" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3479">1,138,096</ix:nonFraction></p> </td>
<td valign="bottom" style="width:55.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E23Q1_StEqComps-AddPaidInCap" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3480">447,134</ix:nonFraction></p> </td>
<td valign="bottom" style="width:63pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E23Q1_StEqComps-RetainedEarnings" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3481">32,527,980</ix:nonFraction></p> </td>
<td valign="bottom" style="width:44.7pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:7pt Arial;margin:0;text-align:right"><span style="font-family:Arial Narrow;color:#339966"> &#160;&#160;</span><span style="font-size:8pt"><ix:nonFraction name="us-gaap:TreasuryStockCommonShares" contextRef="E23Q1_StEqComps-TreasuryStockCommon" decimals="INF" unitRef="Shares" scale="0" format="ixt:num-dot-decimal" id="ixv-3482">171,964</ix:nonFraction></span></p> </td>
<td valign="bottom" style="border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:8pt Arial;margin:0;text-align:right">$ (<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E23Q1_StEqComps-TreasuryStockCommon" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3483">3,922,098</ix:nonFraction>)</p> </td>
<td valign="bottom" style="border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="E23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3484">30,191,112</ix:nonFraction></p> </td></tr>
<tr style="height:6.9pt">
<td valign="top" style="background-color:#CEE7FF"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="background-color:#CEE7FF;width:54.75pt;border-top:3px double #000000"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="background-color:#CEE7FF;width:45.75pt;border-top:3px double #000000"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="background-color:#CEE7FF;border-top:3px double #000000"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="background-color:#CEE7FF;width:55.6pt;border-top:3px double #000000"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="background-color:#CEE7FF;width:63pt;border-top:3px double #000000"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="background-color:#CEE7FF;width:44.7pt;border-top:3px double #000000"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="background-color:#CEE7FF;border-top:3px double #000000"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="background-color:#CEE7FF;border-top:3px double #000000"><p style="font:6pt Arial;margin:0">&#160;</p> </td></tr>
<tr style="height:6.9pt">
<td valign="top"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:54.75pt"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:45.75pt"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:55.6pt"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:63pt"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:44.7pt"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top"><p style="font:6pt Arial;margin:0">&#160;</p> </td>
<td valign="top"><p style="font:6pt Arial;margin:0">&#160;</p> </td></tr>
<tr style="height:6.9pt">
<td colspan="9" valign="top" style="background-color:#CEE7FF"><p style="font:6pt Arial;margin:0"><span style="font-size:9pt">See Notes to the Condensed Consolidated Financial Statements.</span></p> </td></tr> </table> <p style="font:10pt Arial;margin:0">&#160;</p> <hr style="border:0;height:0;width:0;margin:14pt 0 0 0"/><p style="font:10pt Times New Roman;margin:0;text-align:center">4</p> <hr style="page-break-after:always;border:0;height:3pt;background-color:#909090;margin:8pt 0"/><p style="line-height:0;margin:0"></p> <p style="font:10pt Arial;margin:0">&#160;</p> <a id="a6"></a><p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p>
<table style="border-collapse:collapse">
<tr>
<td colspan="4" valign="bottom" style="background-color:#CADFF9;width:450pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:center">CHICAGO RIVET &amp; MACHINE CO.</p> </td></tr>
<tr>
<td colspan="4" valign="bottom" style="width:450pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:center">Condensed Consolidated Statements of Cash Flows (Unaudited)</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td></tr>
<tr style="height:37.8pt">
<td valign="bottom" style="width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:82.25pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:center">Three Months Ended March 31, 2024</p> </td>
<td valign="bottom" style="width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:82.2pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:center">Three Months Ended March 31, 2023</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Cash flows from operating activities:</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Net loss</p> </td>
<td valign="bottom" style="width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:10pt Arial;margin:0;text-align:right"><span style="font-size:9pt">$ &#160;&#160;&#160;&#160;(<ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="Y24Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3485">698,004</ix:nonFraction>)</span>&#160;&#160;</p> </td>
<td valign="bottom" style="width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="Y23Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3486">583,137</ix:nonFraction>)&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Adjustments to reconcile net loss to net cash used in operating activities: </p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Depreciation</p> </td>
<td valign="bottom" style="width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:Depreciation" contextRef="Y24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3487">323,405</ix:nonFraction>&#160;&#160;</p> </td>
<td valign="bottom" style="width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:Depreciation" contextRef="Y23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3488">306,032</ix:nonFraction>&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#833C0B"><span style="color:#000000"> &#160;Gain on disposal of equipment</span></p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:GainLossOnDispositionOfAssets" contextRef="Y24Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3489">36,886</ix:nonFraction>)&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:GainLossOnDispositionOfAssets" contextRef="Y23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3490">0</ix:nonFraction>&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"><span style="color:#833C0B"> &#160;</span>Deferred income taxes</p> </td>
<td valign="bottom" style="width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="Y24Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3491">176,830</ix:nonFraction>)&#160;&#160;</p> </td>
<td valign="bottom" style="width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="Y23Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3492">43,000</ix:nonFraction>)&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Changes in operating assets and liabilities:</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;&#160;&#160;Accounts receivable</p> </td>
<td valign="bottom" style="width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsReceivable" contextRef="Y24Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3493">1,187,835</ix:nonFraction>)&#160;&#160;</p> </td>
<td valign="bottom" style="width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsReceivable" contextRef="Y23Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3494">1,197,937</ix:nonFraction>)&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"><span style="color:#833C0B"> &#160;&#160;&#160;</span>Contract assets</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInContractWithCustomerAsset" contextRef="Y24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3495">118,301</ix:nonFraction>&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInContractWithCustomerAsset" contextRef="Y23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3496">0</ix:nonFraction>&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"><span style="color:#833C0B"> &#160;&#160;&#160;</span>Inventories</p> </td>
<td valign="bottom" style="width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInInventories" contextRef="Y24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3497">580,978</ix:nonFraction>&#160;&#160;</p> </td>
<td valign="bottom" style="width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInInventories" contextRef="Y23Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3498">877,722</ix:nonFraction>)&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;&#160;&#160;Other current assets</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" contextRef="Y24Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3499">78,333</ix:nonFraction>)&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" contextRef="Y23Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3500">160,452</ix:nonFraction>)&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;&#160;&#160;Accounts payable</p> </td>
<td valign="bottom" style="width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsPayable" contextRef="Y24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3501">599,625</ix:nonFraction>&#160;&#160;</p> </td>
<td valign="bottom" style="width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsPayable" contextRef="Y23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3502">924,168</ix:nonFraction>&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;&#160;&#160;Accrued wages and salaries</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities" contextRef="Y24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3503">119,473</ix:nonFraction>&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities" contextRef="Y23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3504">212,746</ix:nonFraction>&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"><span style="color:#833C0B"> &#160;&#160;&#160;</span>Other accrued expenses</p> </td>
<td valign="bottom" style="width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherAccruedLiabilities" contextRef="Y24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3505">183,149</ix:nonFraction>&#160;&#160;</p> </td>
<td valign="bottom" style="width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherAccruedLiabilities" contextRef="Y23Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3506">212,227</ix:nonFraction>)&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"><span style="color:#833C0B"> &#160;&#160;</span> Unearned revenue and customer deposits</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInCustomerAdvancesAndDeposits" contextRef="Y24Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3507">145,802</ix:nonFraction>)&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInCustomerAdvancesAndDeposits" contextRef="Y23Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3508">19,881</ix:nonFraction>)&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"><span style="color:#7030A0"> &#160;&#160;&#160;&#160;&#160;</span>Net cash used in operating activities</p> </td>
<td valign="bottom" style="width:82.25pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInOperatingActivities" contextRef="Y24Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3509">398,759</ix:nonFraction>)&#160;&#160;</p> </td>
<td valign="bottom" style="width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:82.2pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInOperatingActivities" contextRef="Y23Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3510">1,651,410</ix:nonFraction>)&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Cash flows from investing activities:</p> </td>
<td valign="bottom" style="width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Capital expenditures</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:PaymentsToAcquireProductiveAssets" contextRef="Y24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3511">93,085</ix:nonFraction>)&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:PaymentsToAcquireProductiveAssets" contextRef="Y23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3512">413,419</ix:nonFraction>)&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Proceeds from the sale of equipment</p> </td>
<td valign="bottom" style="width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" contextRef="Y24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3513">96,350</ix:nonFraction>&#160;&#160;</p> </td>
<td valign="bottom" style="width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" contextRef="Y23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3514">0</ix:nonFraction>&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Proceeds from short-term investments</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities" contextRef="Y24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3515">1,133,641</ix:nonFraction>&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities" contextRef="Y23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3516">498,000</ix:nonFraction>&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Purchases of short-term investments</p> </td>
<td valign="bottom" style="width:82.25pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:PaymentsToAcquireHeldToMaturitySecurities" contextRef="Y24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3517">737,477</ix:nonFraction>)&#160;&#160;</p> </td>
<td valign="bottom" style="width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:82.2pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PaymentsToAcquireHeldToMaturitySecurities" contextRef="Y23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3518">0</ix:nonFraction>&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;&#160;&#160;Net cash provided by investing activities</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.25pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInInvestingActivities" contextRef="Y24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3519">399,429</ix:nonFraction>&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.2pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInInvestingActivities" contextRef="Y23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3520">84,581</ix:nonFraction>&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Cash flows from financing activities:</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;Cash dividends paid</p> </td>
<td valign="bottom" style="width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:PaymentsOfDividendsCommonStock" contextRef="Y24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3521">96,613</ix:nonFraction>)&#160;&#160;</p> </td>
<td valign="bottom" style="width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:PaymentsOfDividendsCommonStock" contextRef="Y23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3522">212,549</ix:nonFraction>)&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0"> &#160;&#160;&#160;Net cash used in financing activities</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.25pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInFinancingActivities" contextRef="Y24Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3523">96,613</ix:nonFraction>)&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.2pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInFinancingActivities" contextRef="Y23Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3524">212,549</ix:nonFraction>)&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Net decrease in cash and cash equivalents</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" contextRef="Y24Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3525">95,943</ix:nonFraction>)&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" contextRef="Y23Q1" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3526">1,779,378</ix:nonFraction>)&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Cash and cash equivalents at beginning of period</p> </td>
<td valign="bottom" style="width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3527">1,387,075</ix:nonFraction>&#160;&#160;</p> </td>
<td valign="bottom" style="width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="E22" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3528">4,045,101</ix:nonFraction>&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CADFF9;width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Cash and cash equivalents at end of period</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.25pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3529">1,291,132</ix:nonFraction>&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.2pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="E23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3530">2,265,723</ix:nonFraction>&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:279pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:82.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#FF0000;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td colspan="2" valign="bottom" style="background-color:#CADFF9;width:361.25pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">See Notes to the Condensed Consolidated Financial Statements&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CADFF9;width:82.2pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td></tr> </table> <p style="font:10pt Arial;margin:0">&#160;</p> <hr style="border:0;height:0;width:0;margin:14pt 0 0 0"/><p style="font:10pt Times New Roman;margin:0;text-align:center">5</p> <hr style="page-break-after:always;border:0;height:3pt;background-color:#909090;margin:8pt 0"/><p style="line-height:0;margin:0"></p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p> <a id="a7"></a><p style="font:10pt Courier New;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0;text-align:center">CHICAGO RIVET &amp; MACHINE CO.</p> <p style="font:10pt Arial;margin:0;text-align:center">NOTES TO THE CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</p> <p style="font:10pt Arial;margin:0;text-align:center">(Unaudited)</p> <p style="font:10pt Arial;margin:0;text-align:center">&#160;</p> <ix:nonNumeric name="us-gaap:SignificantAccountingPoliciesTextBlock" contextRef="Y24Q1" escape="true" id="ixv-1730"><ix:nonNumeric name="us-gaap:BasisOfAccountingPolicyPolicyTextBlock" contextRef="Y24Q1" escape="true" id="ixv-1731"><p style="font:10pt Arial;margin:0">1. &#160;In the opinion of the Company, the accompanying unaudited interim financial statements contain all adjustments necessary to present fairly the financial position of the Company as of March 31, 2024 (unaudited) and December 31, 2023 (audited) and the results of operations and changes in cash flows for the indicated periods. &#160;Certain information and note disclosures normally included in financial statements prepared in accordance with accounting principles generally accepted in the United States of America have been omitted from these unaudited financial statements in accordance with applicable rules. Please refer to the financial statements and notes thereto included in the Company&#8217;s Annual Report on Form 10-K for the year ended December 31, 2023.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">The preparation of financial statements in conformity with generally accepted accounting principles requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting period. &#160;Actual results could differ from those estimates. &#160;The results of operations for the three month period ended March 31, 2024 are not necessarily indicative of the results to be expected for the year.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">In November 2023, the FASB issued ASU No. 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures, which requires a public entity to disclose its significant segment expense categories and amounts for each reportable segment. &#160;The new guidance is effective for fiscal years beginning after December 15, 2023, and interim periods in fiscal years beginning after December 15, 2024. &#160;The Company is evaluating the impact of this ASU. &#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">In December 2023, the FASB issued ASU No. 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures, to enhance the transparency and decision usefulness of income tax disclosures providing investors with information to better assess how an entity&#8217;s operations and related tax risks and tax planning and operational opportunities affect its tax rate and prospects for future cash flows. The new guidance is effective for annual periods beginning after December 31, 2024. &#160;The Company is evaluating the impact that it will have on our consolidated financial statements and disclosures.</p> </ix:nonNumeric></ix:nonNumeric><p style="font:10pt Arial;margin:0">&#160;</p> <ix:nonNumeric name="us-gaap:ConcentrationRiskDisclosureTextBlock" contextRef="Y24Q1" escape="true" id="ixv-1740"><ix:nonNumeric name="us-gaap:ConcentrationRiskCreditRisk" contextRef="Y24Q1" escape="true" id="ixv-1741"><p style="font:10pt Arial;margin:0">2. &#160;The Company extends credit on the basis of terms that are customary within our markets to various companies doing business primarily in the automotive industry. &#160;The Company has a concentration of credit risk primarily within the automotive industry and in the Midwestern United States. &#160;The Company has established an allowance for accounts that may become uncollectible in the future. &#160;This estimated allowance is based primarily on management's evaluation of the financial condition of the customer and historical experience. &#160;The Company monitors its accounts receivable and charges to expense an amount equal to its estimate of potential credit losses. &#160;The Company considers a number of factors in determining its estimates, including the length of time its trade accounts receivable are past due, the Company's previous loss history and the customer's current ability to pay its obligation. &#160;The Company also considers current economic conditions, the economic outlook and industry-specific factors in its evaluation. &#160;Accounts receivable balances are charged off against the allowance when it is determined that the receivable will not be recovered.</p> </ix:nonNumeric></ix:nonNumeric><p style="font:10pt Arial;margin:0">&#160;</p> <ix:nonNumeric name="us-gaap:LegalMattersAndContingenciesTextBlock" contextRef="Y24Q1" escape="true" id="ixv-1744"><ix:nonNumeric name="us-gaap:CommitmentsAndContingenciesPolicyTextBlock" contextRef="Y24Q1" escape="true" id="ixv-1745"><p style="font:10pt Arial;margin:0">3. &#160;The Company is, from time to time, involved in litigation, including environmental claims and contract disputes, in the normal course of business. &#160;While it is not possible at this time to establish the ultimate amount of liability with respect to contingent liabilities, including those related to legal proceedings, management is of the opinion that the aggregate amount of any such liabilities, for which provision has not been made, will not have a material adverse effect on the Company's financial position, liquidity, results of operations or cash flows. </p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">The Company recognizes a provision if it is probable that an outflow of cash or other economic resources that can be reliably measured will be required to settle the provision. In determining the likelihood and timing of potential cash outflows, management needs to make estimates, the assessment of which is based in part on internal and external financial and legal guidance and other related factors. For contingencies, the Company is required to exercise significant judgement to determine whether the risk of loss is possible but not probable. Contingencies involve inherent uncertainties including, but not limited to, negotiations between affected parties, among other factors, and the amount of actual loss may be significantly more or less that what was provided for with respect to such contingencies. </p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0;color:#000000">The Company was recently notified by one of its customers that certain fasteners manufactured by the Company&#8217;s wholly-owned subsidiary, H&amp;L Tool Company Inc., may not conform to customer specifications. &#160;These fasteners become part of an assembly that is ultimately used in the braking system of certain vehicles. &#160;Based on information provided to the Company by the customer and the Company&#8217;s internal review, which is ongoing, we understand that it was necessary for the customer to identify and sort the non-conforming parts in its inventory and take certain other related actions as a result of the alleged non-conforming parts. The customer has also indicated that its end customer has incurred costs relating to the alleged defective part, including costs to repair certain of the vehicles that included these non-conforming fasteners. &#160;Based on discussions with our customer as to the scope of the actions taken by the customer to date and the Company&#8217;s own internal analysis to date, we determined an estimate of $243,000 as a contingent liability in our financial statements during the three months ended March 31, 2024, in anticipation of potential reimbursement of certain expenses that the customer may have incurred as a result of the non-conforming parts. Our discussions with the customer and our internal review process are ongoing, and the ultimate amount of such liability, if any, may be more or less than the amount reflected in the financial statements for the first quarter of 2024.</p> <p style="font:10pt Arial;margin:0;color:#000000">&#160;</p> <p style="font:10pt Arial;margin:0;color:#000000">The Company may also incur additional potentially significant costs related to this issue, which could materially and adversely affect our results of operations and financial condition. &#160;At this time, the Company is continuing its investigation and cannot quantify potential additional financial liability, if any, due to the ultimate costs that may or may not be incurred by the parties involved in this matter, and the allocation of those costs among the parties involved. It is not possible at this time to establish the ultimate amount of any such contingent liabilities, including those related to any legal proceedings that may result related to this matter. Accordingly, no additional amount has been accrued in our financial statements at March 31, 2024.</p> </ix:nonNumeric></ix:nonNumeric><p style="font:10pt Arial;margin:0">&#160;</p> <ix:nonNumeric name="us-gaap:RevenueFromContractWithCustomerTextBlock" contextRef="Y24Q1" escape="true" continuedAt="c1" id="ixv-1754"><ix:nonNumeric name="us-gaap:RevenueFromContractWithCustomerPolicyTextBlock" contextRef="Y24Q1" escape="true" id="ixv-1755"><p style="font:10pt Arial;margin:0">4. &#160;Revenue&#8212;The Company operates in the fastener industry and is in the business of producing and selling rivets, cold-formed fasteners and parts, screw machine products, automatic rivet setting machines and parts and tools for such machines. &#160;Revenue is recognized when control of the promised goods or services is transferred to our customers, generally upon shipment of goods or completion of services, in an amount that reflects the consideration we expect to receive in exchange for those goods or services. &#160;For certain assembly equipment segment transactions, revenue is recognized based on progress toward completion of the performance obligation using a labor-based measure. &#160;Labor incurred and specific material costs are compared to milestone payments per sales contract. &#160;Based on our experience, this method most accurately reflects the transfer of goods under such contracts. &#160;During the first quarter of 2024, the Company realized revenue of $106,500 related to such contracts and has a remaining performance obligation of $16,600 which is expected to be recognized in the next three months.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">Sales taxes we may collect concurrent with revenue producing activities are excluded from revenue. &#160;Revenue is recognized net of certain sales adjustments to arrive at net sales as reported on the statement of operations. &#160;These adjustments primarily relate to customer returns and allowances, which vary over time. &#160;The Company records a liability and reduction in sales for estimated product returns based upon historical experience. &#160;If we determine that our obligation under warranty claims is probable and subject to reasonable determination, an estimate of that liability is recorded as an offset against revenue at that time. &#160;As of March 31, 2024 and December 31, 2023 reserves for warranty claims were not material. &#160;Cash received by the Company prior to transfer of control is recorded as unearned revenue.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">Shipping and handling fees billed to customers are recognized in net sales, and related costs as cost of sales, when incurred.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">Sales commissions are expensed when incurred because the amortization period is less than one year. &#160;These costs are recorded within selling and administrative expenses in the statement of operations.</p> <p style="font:10pt Arial;margin:0">&#160;</p> </ix:nonNumeric><p style="font:10pt Arial;margin:0">&#160;</p> </ix:nonNumeric><hr style="border:0;height:0;width:0;margin:14pt 0 0 0"/><p style="font:10pt Times New Roman;margin:0;text-align:center">6</p> <hr style="page-break-after:always;border:0;height:3pt;background-color:#909090;margin:8pt 0"/><p style="line-height:0;margin:0"></p> <ix:continuation id="c1"><p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">The following table presents revenue by segment, further disaggregated by end-market:</p> <ix:nonNumeric name="us-gaap:DisaggregationOfRevenueTableTextBlock" contextRef="Y24Q1_ProductOrService-EndMarket" escape="true" id="ixv-1773"><p style="font:10pt Courier New;margin:0">&#160;</p>
<table style="border-collapse:collapse">
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:center"> &#160;Fastener &#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:center"> &#160;Assembly Equipment &#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:center"> &#160;Consolidated &#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:162pt;padding-left:2pt;padding-right:2pt"><p style="font:11pt Arial Narrow;margin:0;color:#339966"><span style="font:9pt Arial;color:#000000">Three Months Ended March 31, 2024:</span></p> </td>
<td valign="bottom" style="width:72pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:72pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:67.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000">Automotive</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y24Q1_ProductOrService-Automotive_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3531">4,629,190</ix:nonFraction></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y24Q1_ProductOrService-Automotive_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3532">48,665</ix:nonFraction></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$&#160; &#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y24Q1_ProductOrService-Automotive" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3533">4,677,955</ix:nonFraction></p> </td></tr>
<tr>
<td valign="bottom" style="width:162pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000">Non-automotive</p> </td>
<td valign="bottom" style="width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y24Q1_ProductOrService-Nonautomotive_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3534">2,094,564</ix:nonFraction></p> </td>
<td valign="bottom" style="width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y24Q1_ProductOrService-Nonautomotive_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3535">1,080,662</ix:nonFraction></p> </td>
<td valign="bottom" style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y24Q1_ProductOrService-Nonautomotive" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3536">3,175,226</ix:nonFraction></p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000">Total net sales</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y24Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3537">6,723,854</ix:nonFraction></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y24Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3538">1,129,327</ix:nonFraction></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3539">7,853,181</ix:nonFraction></p> </td></tr>
<tr>
<td valign="bottom" style="width:162pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000">&#160;</p> </td>
<td valign="bottom" style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000">Three Months Ended March 31, 2023:</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:162pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000">Automotive</p> </td>
<td valign="bottom" style="width:72pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y23Q1_ProductOrService-Automotive_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3540">5,006,190</ix:nonFraction></p> </td>
<td valign="bottom" style="width:72pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y23Q1_ProductOrService-Automotive_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3541">44,878</ix:nonFraction></p> </td>
<td valign="bottom" style="width:67.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y23Q1_ProductOrService-Automotive" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3542">5,051,068</ix:nonFraction></p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000">Non-automotive</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y23Q1_ProductOrService-Nonautomotive_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3543">2,850,623</ix:nonFraction></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y23Q1_ProductOrService-Nonautomotive_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3544">828,034</ix:nonFraction></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y23Q1_ProductOrService-Nonautomotive" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3545">3,678,657</ix:nonFraction></p> </td></tr>
<tr>
<td valign="bottom" style="width:162pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000">Total net sales</p> </td>
<td valign="bottom" style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y23Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3546">7,856,813</ix:nonFraction></p> </td>
<td valign="bottom" style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$&#160; &#160; &#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y23Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3547">872,912</ix:nonFraction></p> </td>
<td valign="bottom" style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3548">8,729,725</ix:nonFraction></p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr> </table> <p style="font:10pt Courier New;margin:0">&#160;</p> </ix:nonNumeric><p style="font:10pt Arial;margin:0">The following table presents revenue by segment, further disaggregated by location:</p> <ix:nonNumeric name="us-gaap:DisaggregationOfRevenueTableTextBlock" contextRef="Y24Q1_StGeo-Location" escape="true" id="ixv-1878"><p style="font:10pt Courier New;margin:0">&#160;</p>
<table style="border-collapse:collapse">
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:center"> &#160;Fastener &#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:center"> &#160;Assembly Equipment &#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:center"> &#160;Consolidated &#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:157.5pt;padding-left:2pt;padding-right:2pt"><p style="font:10pt Times New Roman;margin:0"><span style="font:9pt Arial">Three Months Ended March 31, 2024:</span></p> </td>
<td valign="bottom" style="width:72pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:72pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:67.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000">United States</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y24Q1_StGeo-US_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3549">5,435,993</ix:nonFraction></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y24Q1_StGeo-US_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3550">1,109,221</ix:nonFraction></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y24Q1_StGeo-US" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3551">6,545,214</ix:nonFraction></p> </td></tr>
<tr>
<td valign="bottom" style="width:157.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000">Foreign</p> </td>
<td valign="bottom" style="width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y24Q1_StGeo-NonUs_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3552">1,287,861</ix:nonFraction></p> </td>
<td valign="bottom" style="width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y24Q1_StGeo-NonUs_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3553">20,106</ix:nonFraction></p> </td>
<td valign="bottom" style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y24Q1_StGeo-NonUs" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3554">1,307,967</ix:nonFraction></p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000">Total net sales</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y24Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3555">6,723,854</ix:nonFraction></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$&#160; &#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y24Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3556">1,129,327</ix:nonFraction></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3557">7,853,181</ix:nonFraction></p> </td></tr>
<tr>
<td valign="bottom" style="width:157.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000">&#160;</p> </td>
<td valign="bottom" style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000">Three Months Ended March 31, 2023:</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:157.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000">United States</p> </td>
<td valign="bottom" style="width:72pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y23Q1_StGeo-US_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3558">6,391,747</ix:nonFraction></p> </td>
<td valign="bottom" style="width:72pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y23Q1_StGeo-US_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3559">786,571</ix:nonFraction></p> </td>
<td valign="bottom" style="width:67.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y23Q1_StGeo-US" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3560">7,178,318</ix:nonFraction></p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000">Foreign</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y23Q1_StGeo-NonUs_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3561">1,465,066</ix:nonFraction></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y23Q1_StGeo-NonUs_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3562">86,341</ix:nonFraction></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y23Q1_StGeo-NonUs" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3563">1,551,407</ix:nonFraction></p> </td></tr>
<tr>
<td valign="bottom" style="width:157.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000">Total net sales</p> </td>
<td valign="bottom" style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y23Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3564">7,856,813</ix:nonFraction></p> </td>
<td valign="bottom" style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y23Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3565">872,912</ix:nonFraction></p> </td>
<td valign="bottom" style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="Y23Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3566">8,729,725</ix:nonFraction></p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;color:#000000">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr> </table> <p style="font:10pt Courier New;margin:0">&#160;</p> </ix:nonNumeric><p style="font:10pt Arial;margin:0">&#160;</p> </ix:continuation><hr style="border:0;height:0;width:0;margin:14pt 0 0 0"/><p style="font:10pt Times New Roman;margin:0;text-align:center">7</p> <hr style="page-break-after:always;border:0;height:3pt;background-color:#909090;margin:8pt 0"/><p style="line-height:0;margin:0"></p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p> <ix:nonNumeric name="us-gaap:IncomeTaxDisclosureTextBlock" contextRef="Y24Q1" escape="true" id="ixv-1989"><ix:nonNumeric name="us-gaap:IncomeTaxPolicyTextBlock" contextRef="Y24Q1" escape="true" id="ixv-1990"><p style="font:10pt Arial;margin:0">5. &#160;The Company&#8217;s effective tax rates were approximately 22.9% and 20.9% for the first quarter of 2024 and 2023, respectively.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">The Company&#8217;s federal income tax returns for the 2020 through 2023 tax years are subject to examination by the Internal Revenue Service (&#8220;IRS&#8221;). &#160;Management does not anticipate any adjustments that would result in a material change to the results of operations or financial condition of the Company. &#160;No statutes of limitation have been extended on any of the Company&#8217;s federal income tax filings. The statute of limitations on the Company&#8217;s 2020 through 2023 federal income tax returns will expire on September 15, 2024 through 2027, respectively. </p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">The Company&#8217;s state income tax returns for the 2020 through 2023 tax years remain subject to examination by various state authorities with the latest closing period on October 31, 2027. &#160;The Company is not currently under examination by any state authority for income tax purposes and no statutes of limitation for state income tax filings have been extended.</p> </ix:nonNumeric></ix:nonNumeric><p style="font:10pt Arial;margin:0">&#160;</p> <ix:nonNumeric name="us-gaap:InventoryDisclosureTextBlock" contextRef="Y24Q1" escape="true" id="ixv-1997"><ix:nonNumeric name="us-gaap:InventoryPolicyTextBlock" contextRef="Y24Q1" escape="true" id="ixv-1998"><p style="font:10pt Arial;margin:0">6. &#160;Inventories are stated at the lower of cost or net realizable value, cost being determined by the first-in, first-out method.</p> </ix:nonNumeric><p style="font:10pt Courier New;margin:0;color:#000000"><span style="font-family:Arial"> &#160;A summary of inventories at the dates indicated is as follows:</span> </p> <ix:nonNumeric name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" contextRef="Y24Q1" escape="true" id="ixv-2002"><p style="font:10pt Courier New;margin:0">&#160;</p>
<table style="border-collapse:collapse">
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:93.6pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:87.85pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:center"><span style="border-bottom:1px solid #000000">March 31, 2024</span></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:center">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:87.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:center"><span style="border-bottom:1px solid #000000">December 31, 2023</span></p> </td></tr>
<tr>
<td valign="bottom" style="width:93.6pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Raw material</p> </td>
<td valign="bottom" style="width:87.85pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:InventoryRawMaterials" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3567">2,432,691</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:87.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:InventoryRawMaterials" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3568">2,878,869</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:93.6pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Work-in-process</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:87.85pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:InventoryWorkInProcess" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3569">2,463,760</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:87.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:InventoryWorkInProcess" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3570">2,374,795</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:93.6pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Finished goods</p> </td>
<td valign="bottom" style="width:87.85pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:InventoryFinishedGoods" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3571">2,390,224</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:87.55pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:InventoryFinishedGoods" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3572">2,614,989</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:93.6pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Inventories, gross</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:87.85pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:InventoryGross" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3573">7,286,675</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:87.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:InventoryGross" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3574">7,868,653</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:93.6pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Valuation reserves</p> </td>
<td valign="bottom" style="width:87.85pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:InventoryValuationReserves" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3575">540,000</ix:nonFraction>)&#160;&#160;</p> </td>
<td valign="bottom" style="width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:87.55pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000"><p style="font:9pt Arial;margin:0;text-align:right">(<ix:nonFraction name="us-gaap:InventoryValuationReserves" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3576">541,000</ix:nonFraction>)&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:93.6pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0">Inventories, net</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:87.85pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:InventoryNet" contextRef="E24Q1" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3577">6,746,675</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:6.55pt;padding-left:2pt;padding-right:2pt"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:87.55pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:InventoryNet" contextRef="E23" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3578">7,327,653</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr> </table> <p style="font:10pt Arial;margin:0">&#160;</p> </ix:nonNumeric></ix:nonNumeric><hr style="border:0;height:0;width:0;margin:14pt 0 0 0"/><p style="font:10pt Times New Roman;margin:0;text-align:center">8</p> <hr style="page-break-after:always;border:0;height:3pt;background-color:#909090;margin:8pt 0"/><p style="line-height:0;margin:0"></p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p> <ix:nonNumeric name="us-gaap:SegmentReportingDisclosureTextBlock" contextRef="Y24Q1" escape="true" id="ixv-2077"><ix:nonNumeric name="us-gaap:SegmentReportingPolicyPolicyTextBlock" contextRef="Y24Q1" escape="true" id="ixv-2078"><p style="font:10pt Arial;margin:0">7. &#160;Segment Information&#8212;The Company operates in two business segments as determined by its products. &#160;The fastener segment includes rivets, cold-formed fasteners and parts and screw machine products. &#160;The assembly equipment segment includes automatic rivet setting machines and parts and tools for such machines.</p> <p style="font:10pt Arial;margin:0">&#160;</p> </ix:nonNumeric><p style="font:10pt Arial;margin:0">Information by segment for the periods presented is as follows:</p> <ix:nonNumeric name="us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock" contextRef="Y24Q1" escape="true" id="ixv-2082"><p style="font:10pt Arial;margin:0">&#160;</p>
<table style="border-collapse:collapse">
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:190.95pt"/>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:center"><span style="border-bottom:1px solid #000000">Fastener</span></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:center"><span style="border-bottom:1px solid #000000">Assembly Equipment</span></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:center"><span style="border-bottom:1px solid #000000">Unallocated Corporate</span></p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:center"><span style="border-bottom:1px solid #000000">Consolidated</span></p> </td></tr>
<tr>
<td valign="bottom" style="width:190.95pt"><p style="font:8pt Arial;margin:0">Three Months Ended March 31, 2024:</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:190.95pt"><p style="font:8pt Arial;margin:0">Net sales</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:Revenues" contextRef="Y24Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3579">6,723,854</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;<ix:nonFraction name="us-gaap:Revenues" contextRef="Y24Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3580">1,129,327</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:Revenues" contextRef="Y24Q1_StBusnSeg-Corporate" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3581">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;7,853,181&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:190.95pt"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:190.95pt"><p style="font:8pt Arial;margin:0">Depreciation</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:Depreciation" contextRef="Y24Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3582">293,381</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:Depreciation" contextRef="Y24Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3583">29,484</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:Depreciation" contextRef="Y24Q1_StBusnSeg-Corporate" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3584">540</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">323,405&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:190.95pt"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:190.95pt"><p style="font:8pt Arial;margin:0">Segment operating profit (loss)</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">(<ix:nonFraction name="fil:SegmentOperatingprofit" contextRef="Y24Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3585">389,124</ix:nonFraction>)&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="fil:SegmentOperatingprofit" contextRef="Y24Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3586">322,621</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="fil:SegmentOperatingprofit" contextRef="Y24Q1_StBusnSeg-Corporate" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3587">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">(66,503)&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:190.95pt"><p style="font:8pt Arial;margin:0">Selling and administrative expenses</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="fil:SellingAndAdministrativeExpensesUnallocatedCorporate" contextRef="Y24Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3588">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="fil:SellingAndAdministrativeExpensesUnallocatedCorporate" contextRef="Y24Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3589">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">(<ix:nonFraction name="fil:SellingAndAdministrativeExpensesUnallocatedCorporate" contextRef="Y24Q1_StBusnSeg-Corporate" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3590">836,800</ix:nonFraction>)&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">(836,800)&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:190.95pt"><p style="font:8pt Arial;margin:0">Interest income</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:InterestAndOtherIncome" contextRef="Y24Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3591">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:InterestAndOtherIncome" contextRef="Y24Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3592">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:InterestAndOtherIncome" contextRef="Y24Q1_StBusnSeg-Corporate" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3593">28,469</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt;border-bottom:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:right">28,469&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:190.95pt"><p style="font:8pt Arial;margin:0">Loss before income taxes</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;(874,834)&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:190.95pt"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt;border-top:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:190.95pt"><p style="font:8pt Arial;margin:0">Capital expenditures</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="Y24Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3594">54,222</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="Y24Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3595">38,863</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="Y24Q1_StBusnSeg-Corporate" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3596">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">93,085&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:190.95pt"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:190.95pt"><p style="font:8pt Arial;margin:0">Segment assets:</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:190.95pt"><p style="font:8pt Arial;margin:0"> &#160;&#160;Accounts receivable, net</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="E24Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3597">4,871,135</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="E24Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3598">592,582</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="E24Q1_StBusnSeg-Corporate" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3599">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">5,463,717&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:190.95pt"><p style="font:8pt Arial;margin:0"> &#160;&#160;Inventories, net</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="E24Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3600">5,227,398</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="E24Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3601">1,519,277</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="E24Q1_StBusnSeg-Corporate" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3602">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">6,746,675&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:190.95pt"><p style="font:8pt Arial;margin:0"> &#160;&#160;Property, plant and equipment, net</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="E24Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3603">9,159,982</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="E24Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3604">1,195,183</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="E24Q1_StBusnSeg-Corporate" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3605">1,020,133</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">11,375,298&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:190.95pt"><p style="font:8pt Arial;margin:0"> &#160;&#160;Other assets</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:OtherAssets" contextRef="E24Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3606">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:OtherAssets" contextRef="E24Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3607">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:OtherAssets" contextRef="E24Q1_StBusnSeg-Corporate" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3608">4,207,043</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt;border-bottom:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:right">4,207,043&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:190.95pt"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;27,792,733&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:190.95pt"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt;border-top:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:190.95pt"><p style="font:8pt Arial;margin:0">Three Months Ended March 31, 2023:</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:190.95pt"><p style="font:8pt Arial;margin:0">Net sales</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:Revenues" contextRef="Y23Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3609">7,856,813</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;<ix:nonFraction name="us-gaap:Revenues" contextRef="Y23Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3610">872,912</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:Revenues" contextRef="Y23Q1_StBusnSeg-Corporate" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3611">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;8,729,725&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:190.95pt"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:190.95pt"><p style="font:8pt Arial;margin:0">Depreciation</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:Depreciation" contextRef="Y23Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3612">272,636</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:Depreciation" contextRef="Y23Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3613">30,732</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:Depreciation" contextRef="Y23Q1_StBusnSeg-Corporate" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3614">2,664</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">306,032&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:190.95pt"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:190.95pt"><p style="font:8pt Arial;margin:0">Segment operating profit (loss)</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">(<ix:nonFraction name="fil:SegmentOperatingprofit" contextRef="Y23Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3615">428,501</ix:nonFraction>)&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="fil:SegmentOperatingprofit" contextRef="Y23Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3616">189,315</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="fil:SegmentOperatingprofit" contextRef="Y23Q1_StBusnSeg-Corporate" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3617">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">(239,186)&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:190.95pt"><p style="font:8pt Arial;margin:0">Selling and administrative expenses</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="fil:SellingAndAdministrativeExpensesUnallocatedCorporate" contextRef="Y23Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3618">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="fil:SellingAndAdministrativeExpensesUnallocatedCorporate" contextRef="Y23Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3619">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">(<ix:nonFraction name="fil:SellingAndAdministrativeExpensesUnallocatedCorporate" contextRef="Y23Q1_StBusnSeg-Corporate" decimals="INF" unitRef="USD" sign="-" scale="0" format="ixt:num-dot-decimal" id="ixv-3620">538,537</ix:nonFraction>)&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">(538,537)&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:190.95pt"><p style="font:8pt Arial;margin:0">Interest income</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:InterestAndOtherIncome" contextRef="Y23Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3621">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:InterestAndOtherIncome" contextRef="Y23Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3622">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:InterestAndOtherIncome" contextRef="Y23Q1_StBusnSeg-Corporate" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3623">40,586</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt;border-bottom:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:right">40,586&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:190.95pt"><p style="font:8pt Arial;margin:0">Loss before income taxes</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;(737,137)&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:190.95pt"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt;border-top:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:190.95pt"><p style="font:8pt Arial;margin:0">Capital expenditures</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="Y23Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3624">336,066</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="Y23Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3625">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="Y23Q1_StBusnSeg-Corporate" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3626">77,353</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">413,419&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:190.95pt"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:190.95pt"><p style="font:8pt Arial;margin:0">Segment assets:</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:190.95pt"><p style="font:8pt Arial;margin:0"> &#160;&#160;Accounts receivable, net</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="E23Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3627">5,857,565</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="E23Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3628">315,509</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="E23Q1_StBusnSeg-Corporate" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3629">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">6,173,074&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:190.95pt"><p style="font:8pt Arial;margin:0"> &#160;&#160;Inventories, net</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="E23Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3630">8,566,031</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="E23Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3631">1,432,921</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="E23Q1_StBusnSeg-Corporate" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3632">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">9,998,952&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:190.95pt"><p style="font:8pt Arial;margin:0"> &#160;&#160;Property, plant and equipment, net</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="E23Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3633">9,625,759</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="E23Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3634">1,272,765</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="E23Q1_StBusnSeg-Corporate" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3635">1,070,656</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">11,969,180&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:190.95pt"><p style="font:8pt Arial;margin:0"> &#160;&#160;Other assets</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:OtherAssets" contextRef="E23Q1_StBusnSeg-Fastener" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3636">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:OtherAssets" contextRef="E23Q1_StBusnSeg-AssemblyEquipment" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3637">0</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right"><ix:nonFraction name="us-gaap:OtherAssets" contextRef="E23Q1_StBusnSeg-Corporate" decimals="INF" unitRef="USD" scale="0" format="ixt:num-dot-decimal" id="ixv-3638">5,551,041</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt;border-bottom:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:right">5,551,041&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="width:190.95pt"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td valign="bottom" style="width:75.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;33,692,247&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign="bottom" style="background-color:#CEE7FF;width:190.95pt"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td valign="bottom" style="background-color:#CEE7FF;width:75.6pt"><p style="font:8pt Arial;margin:0">&#160;</p> </td></tr> </table> <p style="font:10pt Arial;margin:0">&#160;</p> </ix:nonNumeric></ix:nonNumeric><hr style="border:0;height:0;width:0;margin:14pt 0 0 0"/><p style="font:10pt Times New Roman;margin:0;text-align:center">9</p> <hr style="page-break-after:always;border:0;height:3pt;background-color:#909090;margin:8pt 0"/><p style="line-height:0;margin:0"></p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p> <a id="a8"></a><p style="font:10pt Courier New;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0;text-align:center">CHICAGO RIVET &amp; MACHINE CO.</p> <p style="font:10pt Arial;margin:0;text-align:center">&#160;</p> <p style="font:10pt Arial;margin:0">Item 2. Management's Discussion and Analysis of Financial Condition and Results of Operations.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0;color:#000000"><span style="border-bottom:1px solid #000000">Results of Operations</span></p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0;text-indent:36pt">Net sales for the first quarter of 2024 were $7,853,181 compared to $8,729,725 in the first quarter of 2023, a decline of $876,544, or 10.0%. The fastener segment drove the decline in sales, which was only partially offset by the increase in sales in the assembly equipment segment for the current year quarter. &#160;The lower sales combined with higher operating costs in the current quarter resulted in a net loss of $(698,004), or $(0.72) per share, compared to a net loss of $(583,137), or $(0.60) per share, in the first quarter of 2023. &#160;During the first quarter of 2024, a regular quarterly dividend of $0.10 per share was paid on March 20, 2024 to shareholders of record on March 5, 2024.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0"><kbd style="margin-left:36pt"></kbd>Fastener segment revenues were $6,723,854 in the first quarter of 2024 compared to $7,856,813 in the first quarter of 2023, a decline of $1,132,959, or 14.4%. &#160;The automotive sector is the primary market for our fastener segment products, and sales to automotive customers were $4,629,190 in the first quarter this year compared to $5,006,190 in the first quarter of 2023, a decrease of $377,000, or 7.5%. &#160;Additionally, fastener segment sales to non-automotive customers, including those in the construction and electronics industries, were $2,094,564 in the first quarter of this year compared to $2,850,623 in the first quarter of 2023, a decline of $756,059 or 26.5%. &#160;Fastener segment gross margins were $368,688 in the first quarter of 2024 compared to $251,624 in the first quarter of 2023, an increase of $117,064, or 46.5%. &#160;Lower volumes were partially offset by price increases, improved production efficiencies, and reduced expediting expenses which improved gross margins in this segment during the quarter.&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0;color:#000000"><kbd style="margin-left:36pt"></kbd>Assembly equipment segment revenues were $1,129,327 in the first quarter of 2024 compared to $872,912 in the first quarter of 2023, an increase of $256,415, or 29.4%. &#160;Non-automotive assembly equipment revenue accounted for nearly all the increase in revenue in this segment, improving $252,628 over the same period last year. &#160;The increase in sales contributed to a $113,109, or 50.0%, improvement in segment gross margin, from $225,879 in 2023 to $338,988 in 2024.&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0;text-indent:36pt">Selling and administrative expenses during the first quarter of 2024 were $1,647,865 compared to $1,257,695 recorded in the first quarter of 2023, an increase of $390,170, or 31.0%. &#160;Included in this increase is a $243,000 expense that represents an estimate for a contingent liability that is described in the paragraphs below. &#160;The amount of the estimate is also included as part of other accrued expenses on the consolidated balance sheet. &#160;While we had reduced commissions in the current year, these reductions were offset by higher professional fees and employee compensation. &#160;Selling and administrative expenses were 21.0% of net sales in the first quarter of 2024 compared to 14.4% in the first quarter of 2023.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0;text-indent:36pt;color:#000000">The Company was recently notified by one of its customers that certain fasteners manufactured by the Company&#8217;s wholly-owned subsidiary, H&amp;L Tool Company Inc., may not conform to customer specifications. &#160;These fasteners become part of an assembly that is ultimately used in the braking system of certain vehicles. &#160;Based on information provided to the Company by the customer and the Company&#8217;s internal review, which is ongoing, we understand that it was necessary for the customer to identify and sort the non-conforming parts in its inventory and take certain other related actions as a result of the alleged non-conforming parts. The customer has also indicated that its end customer has incurred costs relating to the alleged defective part, including costs to repair certain of the vehicles that included these non-conforming fasteners. &#160;Based on discussions with our customer as to the scope of the actions taken by the customer to date and the Company&#8217;s own internal analysis to date, we determined an estimate of $243,000 as a contingent liability in our financial statements during the three months ended March 31, 2024, in anticipation of potential reimbursement of certain expenses that the customer may have incurred as a result of the non-conforming parts. Our discussions with the customer and our internal review process are ongoing, and the ultimate amount of such liability, if any, may be more or less than the amount reflected in the financial statements for the first quarter of 2024.</p> <p style="font:10pt Arial;margin:0;color:#000000">&#160;</p> <p style="font:10pt Arial;margin:0;text-indent:36pt;color:#000000">The Company may also incur additional potentially significant costs related to this issue, which could materially and adversely affect our results of operations and financial condition. &#160;At this time, the Company is continuing its investigation and cannot quantify potential additional financial liability, if any, due to the ultimate costs that may or may not be incurred by the parties involved in this matter, and the allocation of those costs among the parties involved. It is not possible at this time to establish the ultimate amount of any such contingent liabilities, including those related to any legal proceedings that may result related to this matter. Accordingly, no additional amount has been accrued in our financial statements at March 31, 2024.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0"><span style="border-bottom:1px solid #000000">Other Income</span></p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0;text-indent:36pt">Other income in the first quarter of 2024 was $28,469 compared to $43,055 in the first quarter of 2023. &#160;Other income is primarily comprised of interest income, which decreased during the current year due to lower invested balances notwithstanding higher interest rates earned on such balances.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0"><span style="border-bottom:1px solid #000000">Income Tax Expense</span></p> <p style="font:10pt Arial;margin:0;text-indent:36pt">&#160;</p> <p style="font:10pt Arial;margin:0;text-indent:36pt">The Company&#8217;s effective tax rates were approximately 22.9% and 20.9% for the first quarter of 2024 and 2023, respectively.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0"><span style="border-bottom:1px solid #000000">Liquidity and Capital Resources</span></p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0"><kbd style="margin-left:36pt"></kbd>Working capital was $13,295,201 as of March 31, 2024, compared to $13,976,864 at the beginning of the year, a decline of $631,045. &#160;The decline was primarily due to an increase in accounts payable of $599,625 as a result of greater sales of $1,072,287 and production activity during the quarter compared to the fourth quarter of 2023. &#160;The net result of these changes and other cash flow activity was to leave cash, cash equivalents and short-term investments at $2,666,088 as of March 31, 2024 compared to $3,158,195 as of the beginning of the year. &#160;Management believes that current cash, cash equivalents and operating cash flow will provide adequate working capital for the next twelve months.&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0"><span style="border-bottom:1px solid #000000">Results of Operations Summary</span></p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0;text-indent:36pt">Assembly equipment revenues and profitability remained a bright spot in the first quarter and will continue to be a focus for the balance of 2024. &#160;Automotive and non-automotive fastener segment volumes were a headwind for the first quarter and mitigated the pricing relief gains we received in the fourth quarter of 2023 and into the first quarter of 2024. Despite lower volumes for the fastener segment, we were able to improve gross margins through our pricing efforts and improved production efficiencies. &#160;Our focus remains on aligning our cost structure and pricing to reflect current economic conditions. &#160;We are committed to identifying and executing on opportunities to expand existing customer relationships and to build new customer relationships going forward. </p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0"><span style="border-bottom:1px solid #000000"><i>Forward-Looking Statements</i></span></p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0"><i>This discussion contains certain "forward-looking statements" which are inherently subject to risks and uncertainties that may cause actual events to differ materially from those discussed herein. &#160;Factors which may cause such differences in events include those disclosed under the section captioned &#8220;Risk Factors&#8221; in our Annual Report on Form 10-K for the year ended December 31, 2023, and in other fillings we make with the Securities and Exchange Commission. These factors include, among other things: risk related to conditions in the domestic and international automotive industry, upon which we rely for sales revenue, the intense competition in our markets, the concentration of our sales with major customers, risks related to export sales, the price and availability of raw materials, supply chain disruptions, labor relations issues and rising costs, losses related to product liability, warranty and recall claims, costs relating to compliance with environmental laws and regulations, information systems disruptions and the threat of cyber attacks, and the loss of the services of our key employees. &#160;Many of these factors are beyond our ability to control or predict. &#160;Readers are cautioned not to place undue reliance on these forward-looking statements. &#160;We undertake no obligation to publish revised forward-looking statements to reflect events or circumstances after the date hereof or to reflect the occurrence of unanticipated events unless required under the federal securities laws.</i></p> <hr style="border:0;height:0;width:0;margin:14pt 0 0 0"/><p style="font:10pt Times New Roman;margin:0;text-align:center">10</p> <hr style="page-break-after:always;border:0;height:3pt;background-color:#909090;margin:8pt 0"/><p style="line-height:0;margin:0"></p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0;text-align:center">CHICAGO RIVET &amp; MACHINE CO.</p> <a id="a9"></a><p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">Item 4. Controls and Procedures.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000">&#160;</p> <p style="font:10pt Arial;margin:0;text-indent:36pt">(a) &#160;<span style="border-bottom:1px solid #000000">Disclosure Controls and Procedures</span>. &#160;The Company's management, with the participation of the Company's Chief Executive Officer and Chief Financial Officer (the Company&#8217;s principal financial officer), has evaluated the effectiveness of the Company's disclosure controls and procedures (as such term is defined in Rules 13a-15(e) and 15d-15(e) under the Securities Exchange Act of 1934, as amended (the "Exchange Act")) as of the end of the period covered by this report. &#160;Based on such evaluation, the Company's Chief Executive Officer and Chief Financial Officer have concluded that, as of the end of such period, the Company's disclosure controls and procedures were not effective due to weaknesses in internal control over financial reporting as described below.</p> <p style="font:10pt Times New Roman;margin:0;color:#000000">&#160;</p> <p style="font:10pt Arial;margin:0">Material Weaknesses in Internal Control Over Financial Reporting</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">A material weakness is a deficiency, or a combination of deficiencies, in internal control over financial reporting, such that there is a reasonable possibility that a material misstatement of the Company&#8217;s annual or interim financial statements will not be prevented or detected on a timely basis.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">A material weakness in internal control over financial reporting related to income taxes was identified in the Company&#8217;s internal control over financial reporting as previously reported. Specifically, the Company did not design and maintain effective controls related to the review of the presentation of the tax provision related to unusual items.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">A material weakness in internal control over financial reporting related to inventory valuation was identified in the Company&#8217;s internal control over financial reporting as previously reported. Specifically, the Company did not design and maintain effective controls related to the review of the valuation of inventory.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">Remediation Plans for the Material Weaknesses</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">The Company&#8217;s management, under the oversight of the Audit Committee, has designed and implemented changes in processes and controls to remediate the material weakness in internal control over financial reporting related to income taxes. We have engaged external tax advisors to review complex tax matters and assist with provision and classification as necessary.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">The Company&#8217;s management, under the oversight of the Audit Committee, is in the process of designing and implementing changes in processes and controls to remediate the material weakness in internal control over financial reporting related to inventory valuation. Our enhanced design includes the timely review and update of new standards and subsequent review of variance accounts.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">The material weaknesses will not be considered remediated until management completes its remediation plans and the enhanced controls operate for a sufficient period of time and management has concluded, through testing, that the related controls are effective. The Company will monitor the effectiveness of its remediation plans and will refine its remediation plans as appropriate.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">Notwithstanding the material weaknesses noted above, the Company&#8217;s management, including the Company's Chief Executive Officer and Chief Financial Officer has concluded that our unaudited interim consolidated financial statements included in this Quarterly Report present fairly, in all material respects, our financial position, results of operations, and cash flows for the periods presented in accordance with accounting principles generally accepted in the United States of America.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0"><kbd style="margin-left:36pt"></kbd>(b) &#160;<span style="border-bottom:1px solid #000000">Changes in Internal Control Over Financial Reporting</span>. &#160;Except as described above, there have not been any changes in the Company's internal control over financial reporting (as such term is defined in Rules 13a-15(f) and 15d-15(f) under the Exchange Act) during the quarter ended March 31, 2024 that have materially affected, or are reasonably likely to materially affect, the Company&#8217;s internal control over financial reporting.&#160;</p> <hr style="border:0;height:0;width:0;margin:14pt 0 0 0"/><p style="font:10pt Times New Roman;margin:0;text-align:center">11</p> <hr style="page-break-after:always;border:0;height:3pt;background-color:#909090;margin:8pt 0"/><p style="line-height:0;margin:0"></p> <p style="font:10pt Arial;margin:0;text-indent:36pt">&#160;</p> <a id="a10"></a><p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">PART II -- OTHER INFORMATION</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">Item 6. &#160;Exhibits </p> <p style="font:10pt Arial;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:532.8pt">
<tr>
<td valign="top" style="width:51.4pt"><p style="font:10pt Arial;margin:0">Exhibit<br/><span style="border-bottom:1px solid #000000">Number</span></p> </td>
<td valign="top" style="width:481.4pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td></tr>
<tr style="height:28.8pt">
<td valign="middle" style="width:51.4pt"><p style="font:10pt Arial;margin:0">31.1</p> </td>
<td valign="bottom" style="width:481.4pt"><p style="font:10pt Arial;margin:0"><a href="d805117dex311.htm">Certification of Principal Executive Officer Pursuant to Rule 13a-14(a) or 15d-14(a), as Adopted Pursuant to Section 302 of the Sarbanes-Oxley Act of 2002.</a></p> </td></tr>
<tr style="height:28.8pt">
<td valign="middle" style="width:51.4pt"><p style="font:10pt Arial;margin:0">31.2</p> </td>
<td valign="bottom" style="width:481.4pt"><p style="font:10pt Arial;margin:0"><a href="d805117dex312.htm">Certification of Principal Financial Officer Pursuant to Rule 13a-14(a) or 15d-14(a), as Adopted Pursuant to Section 302 of the Sarbanes-Oxley Act of 2002.</a></p> </td></tr>
<tr style="height:28.8pt">
<td valign="middle" style="width:51.4pt"><p style="font:10pt Arial;margin:0">32.1</p> </td>
<td valign="bottom" style="width:481.4pt"><p style="font:10pt Arial;margin:0"><a href="d805117dex321.htm">Certification of Principal Executive Officer Pursuant to 18 U.S.C. Section 1350, as Adopted Pursuant to Section 906 of the Sarbanes-Oxley Act of 2002.</a></p> </td></tr>
<tr style="height:28.8pt">
<td valign="middle" style="width:51.4pt"><p style="font:10pt Arial;margin:0">32.2</p> </td>
<td valign="bottom" style="width:481.4pt"><p style="font:10pt Arial;margin:0"><a href="d805117dex322.htm">Certification of Principal Financial Officer Pursuant to 18 U.S.C. Section 1350, as Adopted Pursuant to Section 906 of the Sarbanes-Oxley Act of 2002.</a></p> </td></tr>
<tr style="height:28.8pt">
<td valign="middle" style="width:51.4pt"><p style="font:10pt Arial;margin:0">101.INS</p> </td>
<td valign="bottom" style="width:481.4pt"><p style="font:10pt Arial;margin:0">Inline XBRL Instance Document &#8211;&#160;the instance document does not appear in the Interactive Data<br/>File because its XBRL tags are embedded within the Inline XBRL document.</p> </td></tr>
<tr style="height:18pt">
<td valign="bottom" style="width:51.4pt"><p style="font:10pt Arial;margin:0">101.SCH</p> </td>
<td valign="bottom" style="width:481.4pt"><p style="font:10pt Arial;margin:0">Inline XBRL Taxonomy Extension Schema Document</p> </td></tr>
<tr style="height:18pt">
<td valign="bottom" style="width:51.4pt"><p style="font:10pt Arial;margin:0">101.CAL</p> </td>
<td valign="bottom" style="width:481.4pt"><p style="font:10pt Arial;margin:0">Inline XBRL Taxonomy Extension Calculation Linkbase Document</p> </td></tr>
<tr style="height:18pt">
<td valign="bottom" style="width:51.4pt"><p style="font:10pt Arial;margin:0">101.DEF</p> </td>
<td valign="bottom" style="width:481.4pt"><p style="font:10pt Arial;margin:0">Inline XBRL Taxonomy Extension Definition Linkbase Document</p> </td></tr>
<tr style="height:18pt">
<td valign="bottom" style="width:51.4pt"><p style="font:10pt Arial;margin:0">101.LAB</p> </td>
<td valign="bottom" style="width:481.4pt"><p style="font:10pt Arial;margin:0">Inline XBRL Taxonomy Extension Label Linkbase Document</p> </td></tr>
<tr style="height:18pt">
<td valign="bottom" style="width:51.4pt"><p style="font:10pt Arial;margin:0">101.PRE</p> </td>
<td valign="bottom" style="width:481.4pt"><p style="font:10pt Arial;margin:0">Inline XBRL Taxonomy Extension Presentation Linkbase Document</p> </td></tr>
<tr>
<td valign="top" style="width:51.4pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:481.4pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td></tr>
<tr>
<td valign="top" style="width:51.4pt"><p style="font:10pt Arial;margin:0">104</p> </td>
<td valign="top" style="width:481.4pt"><p style="font:10pt Arial;margin:0">Cover Page Interactive Data File (formatted in Inline XBRL and contained in Exhibit 101).</p> </td></tr> </table> <hr style="border:0;height:0;width:0;margin:14pt 0 0 0"/><p style="font:10pt Times New Roman;margin:0;text-align:center">12</p> <hr style="page-break-after:always;border:0;height:3pt;background-color:#909090;margin:8pt 0"/><p style="line-height:0;margin:0"></p> <p style="font:10pt Courier New;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">SIGNATURES</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">Pursuant to the requirements of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned thereunto duly authorized.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p>
<table style="border-collapse:collapse">
<tr>
<td valign="top" style="width:296.75pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:242.75pt"><p style="font:10pt Arial;margin:0"><span style="border-bottom:1px solid #000000">CHICAGO RIVET &amp; MACHINE CO.</span></p> </td></tr>
<tr>
<td valign="top" style="width:296.75pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:242.75pt"><p style="font:10pt Arial;margin:0"> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(Registrant)</p> </td></tr>
<tr>
<td valign="top" style="width:296.75pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:242.75pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td></tr>
<tr>
<td valign="top" style="width:296.75pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:242.75pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td></tr>
<tr>
<td valign="top" style="width:296.75pt"><p style="font:10pt Arial;margin:0">Date: &#160;May 10, 2024</p> </td>
<td valign="top" style="width:242.75pt"><p style="font:10pt Arial;margin:0"><span style="border-bottom:1px solid #000000">/s/ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Gregory D. Rizzo</span></p> </td></tr>
<tr>
<td valign="top" style="width:296.75pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:242.75pt"><p style="font:10pt Arial;margin:0">Gregory D. Rizzo</p> </td></tr>
<tr>
<td valign="top" style="width:296.75pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:242.75pt"><p style="font:10pt Arial;margin:0">Chief Executive Officer</p> </td></tr>
<tr>
<td valign="top" style="width:296.75pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:242.75pt"><p style="font:10pt Arial;margin:0"> &#160;(Principal Executive Officer)</p> </td></tr>
<tr>
<td valign="top" style="width:296.75pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:242.75pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td></tr>
<tr>
<td valign="top" style="width:296.75pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:242.75pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td></tr>
<tr>
<td valign="top" style="width:296.75pt"><p style="font:10pt Arial;margin:0">Date: &#160;May 10, 2024</p> </td>
<td valign="top" style="width:242.75pt"><p style="font:10pt Arial;margin:0"><span style="border-bottom:1px solid #000000">/s/ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Joel M. Brown</span></p> </td></tr>
<tr>
<td valign="top" style="width:296.75pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:242.75pt"><p style="font:10pt Arial;margin:0">Joel M. Brown</p> </td></tr>
<tr>
<td valign="top" style="width:296.75pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:242.75pt"><p style="font:10pt Arial;margin:0">Chief Financial Officer</p> </td></tr>
<tr>
<td valign="top" style="width:296.75pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:242.75pt"><p style="font:10pt Arial;margin:0"> &#160;(Principal Financial and Accounting Officer)</p> </td></tr>
<tr>
<td valign="top" style="width:296.75pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:242.75pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td></tr>
<tr>
<td valign="top" style="width:296.75pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td>
<td valign="top" style="width:242.75pt"><p style="font:10pt Arial;margin:0">&#160;</p> </td></tr> </table> <hr style="border:0;height:0;width:0;margin:14pt 0 0 0"/><p style="font:10pt Times New Roman;margin:0;text-align:center">13</p> <p style="font:10pt Times New Roman;margin:0">&#160;</p> </div> </body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>2
<FILENAME>d805117dex311.htm
<DESCRIPTION>EX-31.1
<TEXT>
<HTML><HEAD>
<TITLE>EX-31.1</TITLE>
</HEAD>
  <BODY>
<DIV><P align=right style='font:10pt Arial;margin:0'>EXHIBIT 31.1</P> <P style='font:11pt Times New Roman;margin:0'>&nbsp;</P> <P style='font:10pt Arial;margin:0'>I, Gregory D. Rizzo, certify that:</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P>
<P style='font:10pt Arial;margin:0;text-indent:36pt'>1.&#160;&#160;&#160;I have reviewed this quarterly report on Form 10-Q of Chicago Rivet &amp; Machine Co.; </P> <P style='font:10pt Arial;margin:0'>&nbsp;</P>
<P style='font:10pt Arial;margin:0;margin-left:36pt'>2.&#160;&#160;&#160;Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of
the circumstances under which such statements were made, not misleading with respect to the period covered by this report;</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P>
<P style='font:10pt Arial;margin:0;margin-left:36pt'>3.&#160;&#160;&#160;Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition,
results of operations and cash flows of the registrant as of, and for, the periods presented in this report;</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P> <P style='font:10pt Arial;margin:0;margin-left:36pt'>4.&#160;&#160;&#160;The
registrant&#8217;s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as
defined in Exchange Act Rules 13a-15(f) and 15d-15(f))for the registrant and have:</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P>
<P style='font:10pt Arial;margin:0;margin-left:72pt'><KBD style='position:absolute;font:10pt Arial;margin-left:-36pt'>a)</KBD>Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under
our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being
prepared;&nbsp;</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P> <P style='font:10pt Arial;margin:0;margin-left:72pt'><KBD style='position:absolute;font:10pt Arial;margin-left:-36pt'>b)</KBD>Designed such internal control over financial reporting,
or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in
accordance with generally accepted accounting principles;&nbsp;</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P>
<P style='font:10pt Arial;margin:0;margin-left:72pt'><KBD style='position:absolute;font:10pt Arial;margin-left:-36pt'>c)</KBD>Evaluated the effectiveness of the registrant&#8217;s disclosure controls and procedures and presented in this report our
conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and&nbsp;</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P>
<P style='font:10pt Arial;margin:0;margin-left:72pt'><KBD style='position:absolute;font:10pt Arial;margin-left:-36pt'>d)</KBD>Disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred
during the registrant&#8217;s most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal
control over financial reporting; and&nbsp;</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P> <P style='font:10pt Arial;margin:0;margin-left:36pt'>5.&#160;&#160;&#160;The registrant&#8217;s other certifying officer(s) and I have disclosed, based on
our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s board of directors (or persons performing the equivalent functions):</P>
<P style='font:10pt Arial;margin:0;margin-left:36pt'>&nbsp;</P> <P style='font:10pt Arial;margin:0;margin-left:72pt'><KBD style='position:absolute;font:10pt Arial;margin-left:-36pt'>a)</KBD>All significant deficiencies and material weaknesses in the
design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant&#8217;s ability to record, process, summarize and report financial information; and&nbsp;</P>
<P style='font:10pt Arial;margin:0;text-indent:-36pt;margin-left:72pt'>&nbsp;</P> <P style='font:10pt Arial;margin:0;margin-left:72pt'><KBD style='position:absolute;font:10pt Arial;margin-left:-36pt'>b)</KBD>Any fraud, whether or not material, that
involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting.&nbsp;</P> <P style='font:10pt Arial;margin:0;text-indent:-18pt;margin-left:54pt'>&nbsp;</P>
<P style='font:10pt Arial;margin:0;text-indent:-18pt;margin-left:54pt'>&nbsp;</P>
<TABLE style=border-collapse:collapse>
<TR>
<TD valign=top style=width:224.75pt><P style='font:10pt Arial;margin:0'> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Date: &nbsp;May 10, 2024</P> </TD>
<TD valign=top style=width:314.75pt><P style='font:10pt Arial;margin:0'><FONT style='border-bottom:1px solid #000000'>/s/ Gregory D. Rizzo</FONT></P> </TD></TR>
<TR>
<TD valign=top style=width:224.75pt><P style='font:10pt Arial;margin:0'>&nbsp;</P> </TD>
<TD valign=top style=width:314.75pt><P style='font:10pt Arial;margin:0'>Gregory D. Rizzo</P> </TD></TR>
<TR>
<TD valign=top style=width:224.75pt><P style='font:10pt Arial;margin:0'>&nbsp;</P> </TD>
<TD valign=top style=width:314.75pt><P style='font:10pt Arial;margin:0'>Chief Executive Officer</P> </TD></TR>
<TR>
<TD valign=top style=width:224.75pt><P style='font:10pt Arial;margin:0'>&nbsp;</P> </TD>
<TD valign=top style=width:314.75pt><P style='font:10pt Arial;margin:0'>(Principal Executive Officer)</P> </TD></TR> </TABLE> <HR style='border:0;height:0;width:0;margin:14pt 0 0 0'></DIV> </BODY></HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>3
<FILENAME>d805117dex312.htm
<DESCRIPTION>EX-31.2
<TEXT>
<HTML><HEAD>
<TITLE>EX-31.2</TITLE>
</HEAD>
  <BODY>
<DIV><P align=right style='font:10pt Times New Roman;margin:0'><FONT style=font-family:Arial>EXHIBIT 31.2</FONT></P> <P style='font:10pt Times New Roman;margin:0'>&nbsp;</P> <P style='font:10pt Arial;margin:0'>I, Joel M. Brown, certify that:</P>
<P style='font:10pt Arial;margin:0'>&nbsp;</P> <P style='font:10pt Arial;margin:0;text-indent:36pt'>1.&#160;&#160;&#160;I have reviewed this quarterly report on Form 10-Q of Chicago Rivet &amp; Machine Co.; </P>
<P style='font:10pt Arial;margin:0'>&nbsp;</P> <P style='font:10pt Arial;margin:0;margin-left:36pt'>2.&#160;&#160;&#160;Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact
necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P>
<P style='font:10pt Arial;margin:0;margin-left:36pt'>3.&#160;&#160;&#160;Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition,
results of operations and cash flows of the registrant as of, and for, the periods presented in this report;</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P> <P style='font:10pt Arial;margin:0;margin-left:36pt'>4.&#160;&#160;&#160;The
registrant&#8217;s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as
defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P>
<P style='font:10pt Arial;margin:0;margin-left:72pt'><KBD style='position:absolute;font:10pt Arial;margin-left:-36pt'>a)</KBD>Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under
our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being
prepared;&nbsp;</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P> <P style='font:10pt Arial;margin:0;margin-left:72pt'><KBD style='position:absolute;font:10pt Arial;margin-left:-36pt'>b)</KBD>Designed such internal control over financial reporting,
or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in
accordance with generally accepted accounting principles;&nbsp;</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P>
<P style='font:10pt Arial;margin:0;margin-left:72pt'><KBD style='position:absolute;font:10pt Arial;margin-left:-36pt'>c)</KBD>Evaluated the effectiveness of the registrant&#8217;s disclosure controls and procedures and presented in this report our
conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and&nbsp;</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P>
<P style='font:10pt Arial;margin:0;margin-left:72pt'><KBD style='position:absolute;font:10pt Arial;margin-left:-36pt'>d)</KBD>Disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred
during the registrant&#8217;s most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal
control over financial reporting; and&nbsp;</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P> <P style='font:10pt Arial;margin:0;margin-left:36pt'>5.&#160;&#160;&#160;The registrant&#8217;s other certifying officer(s) and I have disclosed, based on
our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s board of directors (or persons performing the equivalent functions):</P>
<P style='font:10pt Arial;margin:0;margin-left:36pt'>&nbsp;</P> <P style='font:10pt Arial;margin:0;margin-left:72pt'><KBD style='position:absolute;font:10pt Arial;margin-left:-36pt'>a)</KBD>All significant deficiencies and material weaknesses in the
design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant&#8217;s ability to record, process, summarize and report financial information; and&nbsp;</P>
<P style='font:10pt Arial;margin:0;text-indent:-36pt;margin-left:72pt'>&nbsp;</P> <P style='font:10pt Arial;margin:0;margin-left:72pt'><KBD style='position:absolute;font:10pt Arial;margin-left:-36pt'>b)</KBD>Any fraud, whether or not material, that
involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting.&nbsp;</P> <P style='font:10pt Arial;margin:0;text-indent:-18pt;margin-left:54pt'>&nbsp;</P>
<P style='font:10pt Arial;margin:0;text-indent:-18pt;margin-left:54pt'>&nbsp;</P>
<TABLE style=border-collapse:collapse>
<TR>
<TD valign=top style=width:215.75pt><P style='font:10pt Arial;margin:0'> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Date: &nbsp;May 10, 2024</P> </TD>
<TD valign=top style=width:323.75pt><P style='font:10pt Arial;margin:0'><FONT style='border-bottom:1px solid #000000'>/s/ Joel M. Brown</FONT></P> </TD></TR>
<TR>
<TD valign=top style=width:215.75pt><P style='font:10pt Arial;margin:0'>&nbsp;</P> </TD>
<TD valign=top style=width:323.75pt><P style='font:10pt Arial;margin:0'>Joel M. Brown</P> </TD></TR>
<TR>
<TD valign=top style=width:215.75pt><P style='font:10pt Arial;margin:0'>&nbsp;</P> </TD>
<TD valign=top style=width:323.75pt><P style='font:10pt Arial;margin:0'>Chief Financial Officer</P> </TD></TR>
<TR>
<TD valign=top style=width:215.75pt><P style='font:10pt Arial;margin:0'>&nbsp;</P> </TD>
<TD valign=top style=width:323.75pt><P style='font:10pt Arial;margin:0'>(Principal Financial and Accounting Officer)</P> </TD></TR> </TABLE> <HR style='border:0;height:0;width:0;margin:14pt 0 0 0'></DIV> </BODY></HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>4
<FILENAME>d805117dex321.htm
<DESCRIPTION>EX-32.1
<TEXT>
<HTML><HEAD>
<TITLE>EX-32.1</TITLE>
</HEAD>
  <BODY>
<DIV><P align=right style='font:10pt Arial;margin:0'>EXHIBIT 32.1</P> <P align=center style='font:10pt Arial;margin:0'><B>Certification Pursuant to 18 U.S.C. Section 1350,</B></P> <P align=center style='font:10pt Arial;margin:0'><B>as Adopted
Pursuant to</B></P> <P align=center style='font:10pt Arial;margin:0'><B>Section 906 of the Sarbanes-Oxley Act of 2002</B></P> <P style='font:10pt Arial;margin:0'>&nbsp;</P> <P style='font:10pt Arial;margin:0'>In connection with the Quarterly Report
on Form 10-Q of Chicago Rivet &amp; Machine Co. (the &quot;Company&quot;) for the quarterly period ended March 31, 2024 as filed with the Securities and Exchange Commission on the date hereof (the &quot;Report&quot;), I, Gregory D. Rizzo, as Chief
Executive Officer of the Company, hereby certify, pursuant to 18 U.S.C. &#167;&nbsp;1350, as adopted pursuant to &#167;&nbsp;906 of the Sarbanes-Oxley Act of 2002, that, to the best of my knowledge:</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P>
<P style='font:10pt Arial;margin:0'><KBD style='position:absolute;font:10pt Times New Roman;margin-left:36pt'>(1)</KBD><KBD style=margin-left:72pt></KBD>The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities
Exchange Act of 1934; and&nbsp;</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P> <P style='font:10pt Arial;margin:0'><KBD style='position:absolute;font:10pt Times New Roman;margin-left:36pt'>(2)</KBD><KBD style=margin-left:72pt></KBD>The
information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.&nbsp;</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P>
<P style='font:10pt Arial;margin:0'><FONT style='border-bottom:1px solid #000000'>/s/ Gregory D. Rizzo</FONT></P>
<P style='font:10pt Arial;margin:0'><KBD style='position:absolute;font:10pt Arial;margin-left:0pt'>Name:</KBD><KBD style=margin-left:36pt></KBD>Gregory D. Rizzo&nbsp;</P>
<P style='font:10pt Arial;margin:0'><KBD style='position:absolute;font:10pt Arial;margin-left:0pt'>Title:</KBD><KBD style=margin-left:36pt></KBD>Chief Executive Officer&nbsp;</P>
<P style='font:10pt Arial;margin:0'><KBD style=margin-left:36pt></KBD>(Principal Executive Officer)&nbsp;</P>
<P style='font:10pt Arial;margin:0'><KBD style='position:absolute;font:10pt Arial;margin-left:0pt'>Date:</KBD><KBD style=margin-left:36pt></KBD>May 10, 2024&nbsp;</P> <HR style='border:0;height:0;width:0;margin:14pt 0 0 0'></DIV> </BODY></HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.2
<SEQUENCE>5
<FILENAME>d805117dex322.htm
<DESCRIPTION>EX-32.2
<TEXT>
<HTML><HEAD>
<TITLE>EX-32.2</TITLE>
</HEAD>
  <BODY>
<DIV><P align=right style='font:10pt Arial;margin:0'>EXHIBIT 32.2 </P> <P align=center style='font:10pt Arial;margin:0'>&nbsp;</P> <P align=center style='font:10pt Arial;margin:0'><B>Certification Pursuant to 18 U.S.C. Section 1350,</B></P>
<P align=center style='font:10pt Arial;margin:0'><B>as Adopted Pursuant to</B></P> <P align=center style='font:10pt Arial;margin:0'><B>Section 906 of the Sarbanes-Oxley Act of 2002</B></P> <P style='font:10pt Arial;margin:0'>&nbsp;</P>
<P style='font:10pt Arial;margin:0'>In connection with the Quarterly Report on Form 10-Q of Chicago Rivet &amp; Machine Co. (the &quot;Company&quot;) for the quarterly period ended March 31, 2024 as filed with the Securities and Exchange Commission
on the date hereof (the &quot;Report&quot;), I, Joel M. Brown, as Chief Financial Officer of the Company, hereby certify, pursuant to 18 U.S.C. &#167;&nbsp;1350, as adopted pursuant to &#167;&nbsp;906 of the Sarbanes-Oxley Act of 2002, that, to the
best of my knowledge:</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P> <P style='font:10pt Arial;margin:0'><KBD style='position:absolute;font:10pt Times New Roman;margin-left:36pt'>(1)</KBD><KBD style=margin-left:72pt></KBD>The Report fully
complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and&nbsp;</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P>
<P style='font:10pt Arial;margin:0'><KBD style='position:absolute;font:10pt Times New Roman;margin-left:36pt'>(2)</KBD><KBD style=margin-left:72pt></KBD>The information contained in the Report fairly presents, in all material respects, the financial
condition and results of operations of the Company.&nbsp;</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P> <P style='font:10pt Arial;margin:0'>&nbsp;</P> <P style='font:10pt Arial;margin:0'><FONT style='border-bottom:1px solid #000000'>/s/ Joel M.
Brown</FONT></P> <P style='font:10pt Arial;margin:0'><KBD style='position:absolute;font:10pt Arial;margin-left:0pt'>Name:</KBD><KBD style=margin-left:36pt></KBD>Joel M. Brown&nbsp;</P>
<P style='font:10pt Arial;margin:0'><KBD style='position:absolute;font:10pt Arial;margin-left:0pt'>Title:</KBD><KBD style=margin-left:36pt></KBD>Chief Financial Officer&nbsp;</P>
<P style='font:10pt Arial;margin:0'><KBD style=margin-left:36pt></KBD>(Principal Financial and Accounting Officer)&nbsp;</P>
<P style='font:10pt Arial;margin:0'><KBD style='position:absolute;font:10pt Arial;margin-left:0pt'>Date:</KBD><KBD style=margin-left:36pt></KBD>May 10, 2024&nbsp;</P> <HR style='border:0;height:0;width:0;margin:14pt 0 0 0'></DIV> </BODY></HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>6
<FILENAME>cvr-20240331.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA
<TEXT>
<XBRL>
<?xml version='1.0' encoding='iso-8859-1'?>
<!-- Produced by EDGARsuite software, Advanced Computer Innovations, Inc., Copyright (C) 2008-2023 [PPXC1A0KDJ2KVDRZ9JZY]. www.edgarsuite.com -->
<schema xmlns='http://www.w3.org/2001/XMLSchema' xmlns:country='http://xbrl.sec.gov/country/2023' xmlns:us-gaap='http://fasb.org/us-gaap/2023' xmlns:srt='http://fasb.org/srt/2023' xmlns:fil='http://www.chicagorivet.com/20240331' xmlns:dei='http://xbrl.sec.gov/dei/2023' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:xbrldt='http://xbrl.org/2005/xbrldt' targetNamespace='http://www.chicagorivet.com/20240331' xmlns:dtr-types='http://www.xbrl.org/dtr/type/2022-03-31' xmlns:link='http://www.xbrl.org/2003/linkbase' xmlns:xbrli='http://www.xbrl.org/2003/instance' elementFormDefault='qualified' attributeFormDefault='unqualified'>
	<annotation>
		<appinfo>
			<link:linkbaseRef xlink:type="simple" xlink:href="cvr-20240331_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase"/>
			<link:linkbaseRef xlink:type="simple" xlink:href="cvr-20240331_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase"/>
			<link:linkbaseRef xlink:type="simple" xlink:href="cvr-20240331_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase"/>
			<link:linkbaseRef xlink:type="simple" xlink:href="cvr-20240331_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase"/>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureInventories" id="idr_DisclosureInventories">
				<link:definition>000130 - Disclosure - Inventories</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureCommitmentsAndContingencies" id="idr_DisclosureCommitmentsAndContingencies">
				<link:definition>000100 - Disclosure - Commitments and Contingencies</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" id="idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited">
				<link:definition>000050 - Statement - Condensed Consolidated Statements of Shareholders&apos; Equity (Unaudited)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPoliciesPolicies" id="idr_DisclosureAccountingPoliciesPolicies">
				<link:definition>000150 - Disclosure - Accounting Policies (Policies)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited" id="idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited">
				<link:definition>000040 - Statement - Condensed Consolidated Statements of Operations (Unaudited)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesTables" id="idr_DisclosureInventoriesInventoriesTables">
				<link:definition>000170 - Disclosure - Inventories: Inventories (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails" id="idr_DisclosureRevenueDisaggregationOfRevenueDetails">
				<link:definition>000190 - Disclosure - Revenue: Disaggregation of Revenue (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesDetails" id="idr_DisclosureInventoriesInventoriesDetails">
				<link:definition>000200 - Disclosure - Inventories: Inventories (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReporting" id="idr_DisclosureSegmentReporting">
				<link:definition>000140 - Disclosure - Segment Reporting</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentTables" id="idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentTables">
				<link:definition>000180 - Disclosure - Segment Reporting: Schedule of Segment Reporting by Segment (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation" id="idr_DocumentDocumentAndEntityInformation">
				<link:definition>000010 - Document - Document and Entity Information</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnauditedParenthetical" id="idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnauditedParenthetical">
				<link:definition>000060 - Statement - Condensed Consolidated Statements of Shareholders&apos; Equity (Unaudited) - Parenthetical</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" id="idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited">
				<link:definition>000070 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical" id="idr_StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical">
				<link:definition>000030 - Statement - Condensed Consolidated Balance Sheets (Unaudited) - Parenthetical</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited" id="idr_StatementCondensedConsolidatedBalanceSheetsUnaudited">
				<link:definition>000020 - Statement - Condensed Consolidated Balance Sheets (Unaudited)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueTables" id="idr_DisclosureRevenueDisaggregationOfRevenueTables">
				<link:definition>000160 - Disclosure - Revenue: Disaggregation of Revenue (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPolicies" id="idr_DisclosureAccountingPolicies">
				<link:definition>000080 - Disclosure - Accounting Policies</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenue" id="idr_DisclosureRevenue">
				<link:definition>000110 - Disclosure - Revenue</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureRisksAndUncertainties" id="idr_DisclosureRisksAndUncertainties">
				<link:definition>000090 - Disclosure - Risks and Uncertainties</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails" id="idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails">
				<link:definition>000210 - Disclosure - Segment Reporting: Schedule of Segment Reporting by Segment (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureIncomeTaxes" id="idr_DisclosureIncomeTaxes">
				<link:definition>000120 - Disclosure - Income Taxes</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
		</appinfo>
	</annotation>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2005/xbrldt-2005.xsd' namespace='http://xbrl.org/2005/xbrldt'/>
	<import schemaLocation='https://www.xbrl.org/dtr/type/2022-03-31/types.xsd' namespace='http://www.xbrl.org/dtr/type/2022-03-31'/>
	<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'/>
	<element abstract='true' nillable='true' type='dtr-types:domainItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_AssemblyEquipmentMember' name='AssemblyEquipmentMember'/>
	<element abstract='true' nillable='true' type='dtr-types:domainItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_AutomotiveMember' name='AutomotiveMember'/>
	<element abstract='true' nillable='true' type='dtr-types:domainItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_NonautomotiveMember' name='NonautomotiveMember'/>
	<element abstract='true' nillable='true' type='dtr-types:domainItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_FastenerMember' name='FastenerMember'/>
	<element abstract='true' nillable='true' type='dtr-types:domainItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_EndMarketMember' name='EndMarketMember'/>
	<element abstract='true' nillable='true' type='dtr-types:domainItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_LocationMember' name='LocationMember'/>
	<element nillable='true' type='xbrli:monetaryItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' xbrli:balance='credit' id='fil_SegmentOperatingprofit' name='SegmentOperatingprofit'/>
	<element nillable='true' type='xbrli:monetaryItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' xbrli:balance='debit' id='fil_SellingAndAdministrativeExpensesUnallocatedCorporate' name='SellingAndAdministrativeExpensesUnallocatedCorporate'/>
</schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>7
<FILENAME>cvr-20240331_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE
<TEXT>
<XBRL>
<?xml version='1.0' encoding='iso-8859-1'?>
<!-- Produced by EDGARsuite software, Advanced Computer Innovations, Inc., Copyright (C) 2008-2023 [PPXC1A0KDJ2KVDRZ9JZY]. www.edgarsuite.com -->
<link:linkbase xmlns="http://www.xbrl.org/2003/linkbase"
		xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
		xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd"
		xmlns:fil="http://www.chicagorivet.com/20240331"
		xmlns:link="http://www.xbrl.org/2003/linkbase"
		xmlns:xlink="http://www.w3.org/1999/xlink"
		xmlns:xbrldt="http://xbrl.org/2005/xbrldt"
		xmlns:xbrli="http://www.xbrl.org/2003/instance">
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"/>
	<link:calculationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent' xlink:label='us-gaap_AssetsCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue' xlink:label='us-gaap_CashAndCashEquivalentsAtCarryingValue'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_AssetsCurrent' xlink:to='us-gaap_CashAndCashEquivalentsAtCarryingValue' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShortTermInvestments' xlink:label='us-gaap_ShortTermInvestments'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_AssetsCurrent' xlink:to='us-gaap_ShortTermInvestments' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent' xlink:label='us-gaap_AccountsReceivableNetCurrent'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_AssetsCurrent' xlink:to='us-gaap_AccountsReceivableNetCurrent' use='optional' order='3.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetNetCurrent' xlink:label='us-gaap_ContractWithCustomerAssetNetCurrent'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_AssetsCurrent' xlink:to='us-gaap_ContractWithCustomerAssetNetCurrent' use='optional' order='4.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet' xlink:label='us-gaap_InventoryNet'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_AssetsCurrent' xlink:to='us-gaap_InventoryNet' use='optional' order='5.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidTaxes' xlink:label='us-gaap_PrepaidTaxes'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_AssetsCurrent' xlink:to='us-gaap_PrepaidTaxes' use='optional' order='6.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsCurrent' xlink:label='us-gaap_OtherAssetsCurrent'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_AssetsCurrent' xlink:to='us-gaap_OtherAssetsCurrent' use='optional' order='7.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets' xlink:label='us-gaap_Assets'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_Assets' xlink:to='us-gaap_AssetsCurrent' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet' xlink:label='us-gaap_PropertyPlantAndEquipmentNet'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_Assets' xlink:to='us-gaap_PropertyPlantAndEquipmentNet' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxAssetsNet' xlink:label='us-gaap_DeferredIncomeTaxAssetsNet'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_Assets' xlink:to='us-gaap_DeferredIncomeTaxAssetsNet' use='optional' order='3.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentGross' xlink:label='us-gaap_PropertyPlantAndEquipmentGross'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LandAndLandImprovements' xlink:label='us-gaap_LandAndLandImprovements'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_PropertyPlantAndEquipmentGross' xlink:to='us-gaap_LandAndLandImprovements' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingsAndImprovementsGross' xlink:label='us-gaap_BuildingsAndImprovementsGross'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_PropertyPlantAndEquipmentGross' xlink:to='us-gaap_BuildingsAndImprovementsGross' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MachineryAndEquipmentGross' xlink:label='us-gaap_MachineryAndEquipmentGross'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_PropertyPlantAndEquipmentGross' xlink:to='us-gaap_MachineryAndEquipmentGross' use='optional' order='3.0' weight='1.0'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_PropertyPlantAndEquipmentNet' xlink:to='us-gaap_PropertyPlantAndEquipmentGross' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' xlink:label='us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_PropertyPlantAndEquipmentNet' xlink:to='us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' use='optional' order='2.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent' xlink:label='us-gaap_LiabilitiesCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent' xlink:label='us-gaap_AccountsPayableCurrent'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_LiabilitiesCurrent' xlink:to='us-gaap_AccountsPayableCurrent' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent' xlink:label='us-gaap_EmployeeRelatedLiabilitiesCurrent'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_LiabilitiesCurrent' xlink:to='us-gaap_EmployeeRelatedLiabilitiesCurrent' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent' xlink:label='us-gaap_AccruedLiabilitiesCurrent'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_LiabilitiesCurrent' xlink:to='us-gaap_AccruedLiabilitiesCurrent' use='optional' order='3.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerAdvancesAndDepositsCurrent' xlink:label='us-gaap_CustomerAdvancesAndDepositsCurrent'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_LiabilitiesCurrent' xlink:to='us-gaap_CustomerAdvancesAndDepositsCurrent' use='optional' order='4.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities' xlink:label='us-gaap_Liabilities'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_Liabilities' xlink:to='us-gaap_LiabilitiesCurrent' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity' xlink:label='us-gaap_LiabilitiesAndStockholdersEquity'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_LiabilitiesAndStockholdersEquity' xlink:to='us-gaap_Liabilities' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity' xlink:label='us-gaap_StockholdersEquity'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_LiabilitiesAndStockholdersEquity' xlink:to='us-gaap_StockholdersEquity' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockValue' xlink:label='us-gaap_PreferredStockValue'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_StockholdersEquity' xlink:to='us-gaap_PreferredStockValue' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValueOutstanding' xlink:label='us-gaap_CommonStockValueOutstanding'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_StockholdersEquity' xlink:to='us-gaap_CommonStockValueOutstanding' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapital' xlink:label='us-gaap_AdditionalPaidInCapital'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_StockholdersEquity' xlink:to='us-gaap_AdditionalPaidInCapital' use='optional' order='3.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit' xlink:label='us-gaap_RetainedEarningsAccumulatedDeficit'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_StockholdersEquity' xlink:to='us-gaap_RetainedEarningsAccumulatedDeficit' use='optional' order='4.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockValue' xlink:label='us-gaap_TreasuryStockValue'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_StockholdersEquity' xlink:to='us-gaap_TreasuryStockValue' use='optional' order='5.0' weight='-1.0'/>
	</link:calculationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"/>
	<link:calculationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit' xlink:label='us-gaap_GrossProfit'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Revenues' xlink:label='us-gaap_Revenues'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_GrossProfit' xlink:to='us-gaap_Revenues' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfRevenue' xlink:label='us-gaap_CostOfRevenue'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_GrossProfit' xlink:to='us-gaap_CostOfRevenue' use='optional' order='2.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss' xlink:label='us-gaap_OperatingIncomeLoss'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_OperatingIncomeLoss' xlink:to='us-gaap_GrossProfit' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingExpenses' xlink:label='us-gaap_OperatingExpenses'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_OperatingIncomeLoss' xlink:to='us-gaap_OperatingExpenses' use='optional' order='2.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' xlink:label='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' xlink:to='us-gaap_OperatingIncomeLoss' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpense' xlink:label='us-gaap_OtherNonoperatingIncomeExpense'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' xlink:to='us-gaap_OtherNonoperatingIncomeExpense' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss' xlink:label='us-gaap_NetIncomeLoss'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetIncomeLoss' xlink:to='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit' xlink:label='us-gaap_IncomeTaxExpenseBenefit'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetIncomeLoss' xlink:to='us-gaap_IncomeTaxExpenseBenefit' use='optional' order='2.0' weight='-1.0'/>
	</link:calculationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"/>
	<link:calculationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:label='us-gaap_NetCashProvidedByUsedInOperatingActivities'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss' xlink:label='us-gaap_NetIncomeLoss'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_NetIncomeLoss' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Depreciation' xlink:label='us-gaap_Depreciation'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_Depreciation' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnDispositionOfAssets' xlink:label='us-gaap_GainLossOnDispositionOfAssets'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_GainLossOnDispositionOfAssets' use='optional' order='3.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit' xlink:label='us-gaap_DeferredIncomeTaxExpenseBenefit'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_DeferredIncomeTaxExpenseBenefit' use='optional' order='4.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable' xlink:label='us-gaap_IncreaseDecreaseInAccountsReceivable'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_IncreaseDecreaseInAccountsReceivable' use='optional' order='5.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerAsset' xlink:label='us-gaap_IncreaseDecreaseInContractWithCustomerAsset'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_IncreaseDecreaseInContractWithCustomerAsset' use='optional' order='6.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories' xlink:label='us-gaap_IncreaseDecreaseInInventories'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_IncreaseDecreaseInInventories' use='optional' order='7.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets' xlink:label='us-gaap_IncreaseDecreaseInOtherOperatingAssets'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_IncreaseDecreaseInOtherOperatingAssets' use='optional' order='8.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayable' xlink:label='us-gaap_IncreaseDecreaseInAccountsPayable'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_IncreaseDecreaseInAccountsPayable' use='optional' order='9.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities' xlink:label='us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities' use='optional' order='10.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherAccruedLiabilities' xlink:label='us-gaap_IncreaseDecreaseInOtherAccruedLiabilities'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_IncreaseDecreaseInOtherAccruedLiabilities' use='optional' order='11.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInCustomerAdvancesAndDeposits' xlink:label='us-gaap_IncreaseDecreaseInCustomerAdvancesAndDeposits'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_IncreaseDecreaseInCustomerAdvancesAndDeposits' use='optional' order='12.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect' xlink:label='us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect' xlink:to='us-gaap_NetCashProvidedByUsedInOperatingActivities' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities' xlink:label='us-gaap_NetCashProvidedByUsedInInvestingActivities'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect' xlink:to='us-gaap_NetCashProvidedByUsedInInvestingActivities' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities' xlink:label='us-gaap_NetCashProvidedByUsedInFinancingActivities'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect' xlink:to='us-gaap_NetCashProvidedByUsedInFinancingActivities' use='optional' order='3.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireProductiveAssets' xlink:label='us-gaap_PaymentsToAcquireProductiveAssets'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInInvestingActivities' xlink:to='us-gaap_PaymentsToAcquireProductiveAssets' use='optional' order='1.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment' xlink:label='us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInInvestingActivities' xlink:to='us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities' xlink:label='us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInInvestingActivities' xlink:to='us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities' use='optional' order='3.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireHeldToMaturitySecurities' xlink:label='us-gaap_PaymentsToAcquireHeldToMaturitySecurities'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInInvestingActivities' xlink:to='us-gaap_PaymentsToAcquireHeldToMaturitySecurities' use='optional' order='4.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsOfDividendsCommonStock' xlink:label='us-gaap_PaymentsOfDividendsCommonStock'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInFinancingActivities' xlink:to='us-gaap_PaymentsOfDividendsCommonStock' use='optional' order='1.0' weight='-1.0'/>
	</link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>8
<FILENAME>cvr-20240331_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE
<TEXT>
<XBRL>
<?xml version='1.0' encoding='iso-8859-1'?>
<!-- Produced by EDGARsuite software, Advanced Computer Innovations, Inc., Copyright (C) 2008-2023 [PPXC1A0KDJ2KVDRZ9JZY]. www.edgarsuite.com -->
<link:linkbase xmlns="http://www.xbrl.org/2003/linkbase"
		xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
		xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd"
		xmlns:fil="http://www.chicagorivet.com/20240331"
		xmlns:link="http://www.xbrl.org/2003/linkbase"
		xmlns:xlink="http://www.w3.org/1999/xlink"
		xmlns:xbrldt="http://xbrl.org/2005/xbrldt"
		xmlns:xbrli="http://www.xbrl.org/2003/instance">
	<link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all"/>
	<link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension"/>
	<link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default"/>
	<link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain"/>
	<link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DocumentDocumentAndEntityInformation"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis' xlink:label='us-gaap_StatementEquityComponentsAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementEquityComponentsAxis' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain' xlink:label='us-gaap_EquityComponentDomain'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='us-gaap_EquityComponentDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain' xlink:label='us-gaap_EquityComponentDomain_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='us-gaap_EquityComponentDomain_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockMember' xlink:label='us-gaap_PreferredStockMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_EquityComponentDomain' xlink:to='us-gaap_PreferredStockMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember' xlink:label='us-gaap_CommonStockMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_EquityComponentDomain' xlink:to='us-gaap_CommonStockMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember' xlink:label='us-gaap_AdditionalPaidInCapitalMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_EquityComponentDomain' xlink:to='us-gaap_AdditionalPaidInCapitalMember' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember' xlink:label='us-gaap_RetainedEarningsMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_EquityComponentDomain' xlink:to='us-gaap_RetainedEarningsMember' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockCommonMember' xlink:label='us-gaap_TreasuryStockCommonMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_EquityComponentDomain' xlink:to='us-gaap_TreasuryStockCommonMember' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/all' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StatementTable' order='0.5' xbrldt:closed='true' xbrldt:contextElement='segment' use='optional'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity' xlink:label='us-gaap_StockholdersEquity'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StockholdersEquity' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding' xlink:label='us-gaap_CommonStockSharesOutstanding'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_CommonStockSharesOutstanding' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockCommonShares' xlink:label='us-gaap_TreasuryStockCommonShares'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_TreasuryStockCommonShares' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss' xlink:label='us-gaap_NetIncomeLoss'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_NetIncomeLoss' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Dividends' xlink:label='us-gaap_Dividends'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_Dividends' use='optional' order='5.0'/>
	</link:definitionLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnauditedParenthetical" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnauditedParenthetical"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnauditedParenthetical"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPolicies" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureAccountingPolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPolicies"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureRisksAndUncertainties" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureRisksAndUncertainties"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureRisksAndUncertainties"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureCommitmentsAndContingencies" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureCommitmentsAndContingencies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureCommitmentsAndContingencies"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenue" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureRevenue"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenue"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureIncomeTaxes" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureIncomeTaxes"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureIncomeTaxes"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureInventories" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureInventories"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureInventories"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReporting" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureSegmentReporting"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReporting"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPoliciesPolicies" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureAccountingPoliciesPolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPoliciesPolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis' xlink:label='srt_RangeAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='srt_RangeAxis' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember' xlink:label='srt_RangeMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='srt_RangeAxis' xlink:to='srt_RangeMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember' xlink:label='srt_RangeMember_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='srt_RangeAxis' xlink:to='srt_RangeMember_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember' xlink:label='srt_MinimumMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_RangeMember' xlink:to='srt_MinimumMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember' xlink:label='srt_MaximumMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_RangeMember' xlink:to='srt_MaximumMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/all' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StatementTable' order='0.5' xbrldt:closed='true' xbrldt:contextElement='segment' use='optional'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock' xlink:label='us-gaap_BasisOfAccountingPolicyPolicyTextBlock'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_BasisOfAccountingPolicyPolicyTextBlock' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskCreditRisk' xlink:label='us-gaap_ConcentrationRiskCreditRisk'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ConcentrationRiskCreditRisk' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesPolicyTextBlock' xlink:label='us-gaap_CommitmentsAndContingenciesPolicyTextBlock'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_CommitmentsAndContingenciesPolicyTextBlock' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock' xlink:label='us-gaap_RevenueFromContractWithCustomerPolicyTextBlock'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_RevenueFromContractWithCustomerPolicyTextBlock' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxPolicyTextBlock' xlink:label='us-gaap_IncomeTaxPolicyTextBlock'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_IncomeTaxPolicyTextBlock' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryPolicyTextBlock' xlink:label='us-gaap_InventoryPolicyTextBlock'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_InventoryPolicyTextBlock' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingPolicyPolicyTextBlock' xlink:label='us-gaap_SegmentReportingPolicyPolicyTextBlock'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_SegmentReportingPolicyPolicyTextBlock' use='optional' order='7.0'/>
	</link:definitionLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueTables" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureRevenueDisaggregationOfRevenueTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis' xlink:label='srt_ProductOrServiceAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='srt_ProductOrServiceAxis' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain' xlink:label='srt_ProductsAndServicesDomain'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='srt_ProductOrServiceAxis' xlink:to='srt_ProductsAndServicesDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain' xlink:label='srt_ProductsAndServicesDomain_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='srt_ProductOrServiceAxis' xlink:to='srt_ProductsAndServicesDomain_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_EndMarketMember' xlink:label='fil_EndMarketMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_ProductsAndServicesDomain' xlink:to='fil_EndMarketMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis' xlink:label='srt_StatementGeographicalAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='srt_StatementGeographicalAxis' use='optional' order='2.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain' xlink:label='srt_SegmentGeographicalDomain'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='srt_StatementGeographicalAxis' xlink:to='srt_SegmentGeographicalDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain' xlink:label='srt_SegmentGeographicalDomain_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='srt_StatementGeographicalAxis' xlink:to='srt_SegmentGeographicalDomain_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_LocationMember' xlink:label='fil_LocationMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_SegmentGeographicalDomain' xlink:to='fil_LocationMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/all' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StatementTable' order='0.5' xbrldt:closed='true' xbrldt:contextElement='segment' use='optional'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock' xlink:label='us-gaap_DisaggregationOfRevenueTableTextBlock'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_DisaggregationOfRevenueTableTextBlock' use='optional' order='1.0'/>
	</link:definitionLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesTables" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureInventoriesInventoriesTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesTables"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentTables" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentTables"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureRevenueDisaggregationOfRevenueDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis' xlink:label='us-gaap_StatementBusinessSegmentsAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementBusinessSegmentsAxis' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain' xlink:label='us-gaap_SegmentDomain'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='us-gaap_StatementBusinessSegmentsAxis' xlink:to='us-gaap_SegmentDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain' xlink:label='us-gaap_SegmentDomain_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='us-gaap_StatementBusinessSegmentsAxis' xlink:to='us-gaap_SegmentDomain_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_FastenerMember' xlink:label='fil_FastenerMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_SegmentDomain' xlink:to='fil_FastenerMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_AssemblyEquipmentMember' xlink:label='fil_AssemblyEquipmentMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_SegmentDomain' xlink:to='fil_AssemblyEquipmentMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis' xlink:label='srt_ProductOrServiceAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='srt_ProductOrServiceAxis' use='optional' order='2.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain' xlink:label='srt_ProductsAndServicesDomain'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='srt_ProductOrServiceAxis' xlink:to='srt_ProductsAndServicesDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain' xlink:label='srt_ProductsAndServicesDomain_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='srt_ProductOrServiceAxis' xlink:to='srt_ProductsAndServicesDomain_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_AutomotiveMember' xlink:label='fil_AutomotiveMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_ProductsAndServicesDomain' xlink:to='fil_AutomotiveMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_NonautomotiveMember' xlink:label='fil_NonautomotiveMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_ProductsAndServicesDomain' xlink:to='fil_NonautomotiveMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis' xlink:label='srt_StatementGeographicalAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='srt_StatementGeographicalAxis' use='optional' order='3.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain' xlink:label='srt_SegmentGeographicalDomain'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='srt_StatementGeographicalAxis' xlink:to='srt_SegmentGeographicalDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain' xlink:label='srt_SegmentGeographicalDomain_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='srt_StatementGeographicalAxis' xlink:to='srt_SegmentGeographicalDomain_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/country/2023/country-2023.xsd#country_US' xlink:label='country_US'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_SegmentGeographicalDomain' xlink:to='country_US' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonUsMember' xlink:label='us-gaap_NonUsMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_SegmentGeographicalDomain' xlink:to='us-gaap_NonUsMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/all' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StatementTable' order='0.5' xbrldt:closed='true' xbrldt:contextElement='segment' use='optional'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' xlink:label='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' use='optional' order='1.0'/>
	</link:definitionLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesDetails" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureInventoriesInventoriesDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesDetails"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis' xlink:label='us-gaap_StatementBusinessSegmentsAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementBusinessSegmentsAxis' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain' xlink:label='us-gaap_SegmentDomain'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='us-gaap_StatementBusinessSegmentsAxis' xlink:to='us-gaap_SegmentDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain' xlink:label='us-gaap_SegmentDomain_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='us-gaap_StatementBusinessSegmentsAxis' xlink:to='us-gaap_SegmentDomain_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_FastenerMember' xlink:label='fil_FastenerMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_SegmentDomain' xlink:to='fil_FastenerMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_AssemblyEquipmentMember' xlink:label='fil_AssemblyEquipmentMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_SegmentDomain' xlink:to='fil_AssemblyEquipmentMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateMember' xlink:label='us-gaap_CorporateMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_SegmentDomain' xlink:to='us-gaap_CorporateMember' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/all' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StatementTable' order='0.5' xbrldt:closed='true' xbrldt:contextElement='segment' use='optional'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Revenues' xlink:label='us-gaap_Revenues'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_Revenues' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Depreciation' xlink:label='us-gaap_Depreciation'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_Depreciation' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_SegmentOperatingprofit' xlink:label='fil_SegmentOperatingprofit'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_SegmentOperatingprofit' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_SellingAndAdministrativeExpensesUnallocatedCorporate' xlink:label='fil_SellingAndAdministrativeExpensesUnallocatedCorporate'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_SellingAndAdministrativeExpensesUnallocatedCorporate' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestAndOtherIncome' xlink:label='us-gaap_InterestAndOtherIncome'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_InterestAndOtherIncome' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment' xlink:label='us-gaap_PaymentsToAcquirePropertyPlantAndEquipment'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_PaymentsToAcquirePropertyPlantAndEquipment' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent' xlink:label='us-gaap_AccountsReceivableNetCurrent'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_AccountsReceivableNetCurrent' use='optional' order='7.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet' xlink:label='us-gaap_InventoryNet'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_InventoryNet' use='optional' order='8.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet' xlink:label='us-gaap_PropertyPlantAndEquipmentNet'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_PropertyPlantAndEquipmentNet' use='optional' order='9.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssets' xlink:label='us-gaap_OtherAssets'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_OtherAssets' use='optional' order='10.0'/>
	</link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>9
<FILENAME>cvr-20240331_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE
<TEXT>
<XBRL>
<?xml version='1.0' encoding='iso-8859-1'?>
<!-- Produced by EDGARsuite software, Advanced Computer Innovations, Inc., Copyright (C) 2008-2023 [PPXC1A0KDJ2KVDRZ9JZY]. www.edgarsuite.com -->
<link:linkbase xmlns="http://www.xbrl.org/2003/linkbase"
		xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
		xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd"
		xmlns:fil="http://www.chicagorivet.com/20240331"
		xmlns:link="http://www.xbrl.org/2003/linkbase"
		xmlns:xlink="http://www.w3.org/1999/xlink"
		xmlns:xbrldt="http://xbrl.org/2005/xbrldt"
		xmlns:xbrli="http://www.xbrl.org/2003/instance">
	<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"/>
	<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"/>
	<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"/>
	<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"/>
	<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"/>
	<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"/>
	<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:labelLink xlink:type="extended" xlink:role="http://www.xbrl.org/2003/role/link">
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_SellingAndAdministrativeExpensesUnallocatedCorporate' xlink:label='fil_SellingAndAdministrativeExpensesUnallocatedCorporate'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_SellingAndAdministrativeExpensesUnallocatedCorporate' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Selling and Administrative Expenses</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_SellingAndAdministrativeExpensesUnallocatedCorporate' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>The aggregate total costs related to selling a firm&apos;s product and services, as well as all other general and adminstrative expenses</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_SellingAndAdministrativeExpensesUnallocatedCorporate' xlink:to='lab_fil_SellingAndAdministrativeExpensesUnallocatedCorporate'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities' xlink:label='us-gaap_NetCashProvidedByUsedInFinancingActivities'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NetCashProvidedByUsedInFinancingActivities' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Net cash used in financing activities</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NetCashProvidedByUsedInFinancingActivities' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Net cash used in financing activities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_NetCashProvidedByUsedInFinancingActivities' xlink:to='lab_us-gaap_NetCashProvidedByUsedInFinancingActivities'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable' xlink:label='us-gaap_IncreaseDecreaseInAccountsReceivable'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInAccountsReceivable' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accounts receivable</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncreaseDecreaseInAccountsReceivable' xlink:to='lab_us-gaap_IncreaseDecreaseInAccountsReceivable'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Dividends' xlink:label='us-gaap_Dividends'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_Dividends' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Dividends declared</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_Dividends' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Dividends declared</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_Dividends' xlink:to='lab_us-gaap_Dividends'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember' xlink:label='us-gaap_RetainedEarningsMember'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_RetainedEarningsMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Retained Earnings</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_RetainedEarningsMember' xlink:to='lab_us-gaap_RetainedEarningsMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicShare' xlink:label='us-gaap_IncomeLossFromContinuingOperationsPerBasicShare'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Basic net loss per share</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncomeLossFromContinuingOperationsPerBasicShare' xlink:to='lab_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss' xlink:label='us-gaap_NetIncomeLoss'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NetIncomeLoss' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Net loss</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NetIncomeLoss' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Net loss</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_NetIncomeLoss' xlink:to='lab_us-gaap_NetIncomeLoss'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit' xlink:label='us-gaap_IncomeTaxExpenseBenefit'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeTaxExpenseBenefit' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Benefit for income taxes</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncomeTaxExpenseBenefit' xlink:to='lab_us-gaap_IncomeTaxExpenseBenefit'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockValue' xlink:label='us-gaap_TreasuryStockValue'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_TreasuryStockValue' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Treasury stock, 171,964 shares at cost</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_TreasuryStockValue' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Treasury stock, 171,964 shares at cost</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_TreasuryStockValue' xlink:to='lab_us-gaap_TreasuryStockValue'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown' xlink:label='dei_EntityAddressCityOrTown'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityAddressCityOrTown' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Address, City or Town</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityAddressCityOrTown' xlink:to='lab_dei_EntityAddressCityOrTown'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate' xlink:label='dei_DocumentPeriodEndDate'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_DocumentPeriodEndDate' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Document Period End Date</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_DocumentPeriodEndDate' xlink:to='lab_dei_DocumentPeriodEndDate'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType' xlink:label='dei_DocumentType'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_DocumentType' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Document Type</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_DocumentType' xlink:to='lab_dei_DocumentType'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_LocationMember' xlink:label='fil_LocationMember'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_LocationMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Location</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_LocationMember' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the Location, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_LocationMember' xlink:to='lab_fil_LocationMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerAsset' xlink:label='us-gaap_IncreaseDecreaseInContractWithCustomerAsset'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInContractWithCustomerAsset' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Contract assets {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInContractWithCustomerAsset' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Contract assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncreaseDecreaseInContractWithCustomerAsset' xlink:to='lab_us-gaap_IncreaseDecreaseInContractWithCustomerAsset'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract' xlink:label='us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Cash flows from operating activities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract' xlink:to='lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockCommonShares' xlink:label='us-gaap_TreasuryStockCommonShares'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_TreasuryStockCommonShares' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Treasury Stock Shares</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_TreasuryStockCommonShares' xlink:role='http://www.xbrl.org/2003/role/periodStartLabel' xml:lang='en-US'>Treasury Stock Shares</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_TreasuryStockCommonShares' xlink:role='http://www.xbrl.org/2003/role/periodEndLabel' xml:lang='en-US'>Treasury Stock Shares</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_TreasuryStockCommonShares' xlink:to='lab_us-gaap_TreasuryStockCommonShares'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockDividendsPerShareDeclared' xlink:label='us-gaap_CommonStockDividendsPerShareDeclared'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CommonStockDividendsPerShareDeclared' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Cash dividends declared per share</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CommonStockDividendsPerShareDeclared' xlink:to='lab_us-gaap_CommonStockDividendsPerShareDeclared'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss' xlink:label='us-gaap_OperatingIncomeLoss'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OperatingIncomeLoss' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Operating loss</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OperatingIncomeLoss' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Operating loss</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OperatingIncomeLoss' xlink:to='lab_us-gaap_OperatingIncomeLoss'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode' xlink:label='dei_CityAreaCode'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_CityAreaCode' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>City Area Code</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_CityAreaCode' xlink:to='lab_dei_CityAreaCode'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_NonautomotiveMember' xlink:label='fil_NonautomotiveMember'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_NonautomotiveMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>NonAutomotive</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_NonautomotiveMember' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the NonAutomotive, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_NonautomotiveMember' xlink:to='lab_fil_NonautomotiveMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Depreciation' xlink:label='us-gaap_Depreciation'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_Depreciation' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Depreciation</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_Depreciation' xlink:to='lab_us-gaap_Depreciation'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain' xlink:label='us-gaap_EquityComponentDomain'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_EquityComponentDomain' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Equity Component</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_EquityComponentDomain' xlink:to='lab_us-gaap_EquityComponentDomain'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StatementTable' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Statement</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_StatementTable' xlink:to='lab_us-gaap_StatementTable'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementAbstract' xlink:label='us-gaap_IncomeStatementAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeStatementAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Condensed Consolidated Statements of Operations (Unaudited)</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncomeStatementAbstract' xlink:to='lab_us-gaap_IncomeStatementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockParOrStatedValuePerShare' xlink:label='us-gaap_PreferredStockParOrStatedValuePerShare'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PreferredStockParOrStatedValuePerShare' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Preferred Stock, Par or Stated Value Per Share</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PreferredStockParOrStatedValuePerShare' xlink:to='lab_us-gaap_PreferredStockParOrStatedValuePerShare'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValueOutstanding' xlink:label='us-gaap_CommonStockValueOutstanding'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CommonStockValueOutstanding' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Common stock, $1.00 par value, 4,000,000 shares authorized, 1,138,096 shares issued; 966,132 shares outstanding</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CommonStockValueOutstanding' xlink:to='lab_us-gaap_CommonStockValueOutstanding'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent' xlink:label='us-gaap_AccruedLiabilitiesCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AccruedLiabilitiesCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Other accrued expenses</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AccruedLiabilitiesCurrent' xlink:to='lab_us-gaap_AccruedLiabilitiesCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShortTermInvestments' xlink:label='us-gaap_ShortTermInvestments'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ShortTermInvestments' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Short-term investments</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ShortTermInvestments' xlink:to='lab_us-gaap_ShortTermInvestments'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsAbstract' xlink:label='us-gaap_AssetsAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AssetsAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Assets {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AssetsAbstract' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AssetsAbstract' xlink:to='lab_us-gaap_AssetsAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName' xlink:label='dei_SecurityExchangeName'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_SecurityExchangeName' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Security Exchange Name</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_SecurityExchangeName' xlink:to='lab_dei_SecurityExchangeName'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_TableTextBlockSupplementAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Tables/Schedules</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='lab_us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock' xlink:label='us-gaap_RevenueFromContractWithCustomerPolicyTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Revenue {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Revenue</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_RevenueFromContractWithCustomerPolicyTextBlock' xlink:to='lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesAuthorized' xlink:label='us-gaap_CommonStockSharesAuthorized'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CommonStockSharesAuthorized' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Common Stock, Shares Authorized</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CommonStockSharesAuthorized' xlink:to='lab_us-gaap_CommonStockSharesAuthorized'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerAdvancesAndDepositsCurrent' xlink:label='us-gaap_CustomerAdvancesAndDepositsCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CustomerAdvancesAndDepositsCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Unearned revenue and customer deposits</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CustomerAdvancesAndDepositsCurrent' xlink:to='lab_us-gaap_CustomerAdvancesAndDepositsCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue' xlink:label='us-gaap_CashAndCashEquivalentsAtCarryingValue'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CashAndCashEquivalentsAtCarryingValue' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Cash and cash equivalents</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CashAndCashEquivalentsAtCarryingValue' xlink:role='http://www.xbrl.org/2003/role/periodStartLabel' xml:lang='en-US'>Cash and cash equivalents at beginning of period</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CashAndCashEquivalentsAtCarryingValue' xlink:role='http://www.xbrl.org/2003/role/periodEndLabel' xml:lang='en-US'>Cash and cash equivalents at end of period</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CashAndCashEquivalentsAtCarryingValue' xlink:to='lab_us-gaap_CashAndCashEquivalentsAtCarryingValue'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_TextBlockAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Details</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_TextBlockAbstract' xlink:to='lab_us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment' xlink:label='us-gaap_PaymentsToAcquirePropertyPlantAndEquipment'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Capital expenditures {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Capital expenditures</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PaymentsToAcquirePropertyPlantAndEquipment' xlink:to='lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateMember' xlink:label='us-gaap_CorporateMember'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CorporateMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Corporate Segment</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CorporateMember' xlink:to='lab_us-gaap_CorporateMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryPolicyTextBlock' xlink:label='us-gaap_InventoryPolicyTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InventoryPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Inventories {2}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InventoryPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Inventories</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_InventoryPolicyTextBlock' xlink:to='lab_us-gaap_InventoryPolicyTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskCreditRisk' xlink:label='us-gaap_ConcentrationRiskCreditRisk'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ConcentrationRiskCreditRisk' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Risks and Uncertainties {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ConcentrationRiskCreditRisk' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Risks and Uncertainties</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ConcentrationRiskCreditRisk' xlink:to='lab_us-gaap_ConcentrationRiskCreditRisk'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherAccruedLiabilities' xlink:label='us-gaap_IncreaseDecreaseInOtherAccruedLiabilities'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Other accrued expenses {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Other accrued expenses</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncreaseDecreaseInOtherAccruedLiabilities' xlink:to='lab_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities' xlink:label='us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accrued wages and salaries {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Accrued wages and salaries</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities' xlink:to='lab_us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories' xlink:label='us-gaap_IncreaseDecreaseInInventories'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInInventories' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Inventories</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncreaseDecreaseInInventories' xlink:to='lab_us-gaap_IncreaseDecreaseInInventories'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrentAbstract' xlink:label='us-gaap_AssetsCurrentAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AssetsCurrentAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Current Assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AssetsCurrentAbstract' xlink:to='lab_us-gaap_AssetsCurrentAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1' xlink:label='dei_EntityAddressAddressLine1'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityAddressAddressLine1' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Address, Address Line One</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityAddressAddressLine1' xlink:to='lab_dei_EntityAddressAddressLine1'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber' xlink:label='dei_EntityFileNumber'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityFileNumber' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity File Number</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityFileNumber' xlink:to='lab_dei_EntityFileNumber'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonUsMember' xlink:label='us-gaap_NonUsMember'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NonUsMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Non-US</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_NonUsMember' xlink:to='lab_us-gaap_NonUsMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain' xlink:label='us-gaap_SegmentDomain'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_SegmentDomain' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Segments</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_SegmentDomain' xlink:to='lab_us-gaap_SegmentDomain'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesPolicyTextBlock' xlink:label='us-gaap_CommitmentsAndContingenciesPolicyTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CommitmentsAndContingenciesPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Commitments and Contingencies {2}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CommitmentsAndContingenciesPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Commitments and Contingencies</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CommitmentsAndContingenciesPolicyTextBlock' xlink:to='lab_us-gaap_CommitmentsAndContingenciesPolicyTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingDisclosureTextBlock' xlink:label='us-gaap_SegmentReportingDisclosureTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_SegmentReportingDisclosureTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Segment Reporting</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_SegmentReportingDisclosureTextBlock' xlink:to='lab_us-gaap_SegmentReportingDisclosureTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets' xlink:label='us-gaap_IncreaseDecreaseInOtherOperatingAssets'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Other current assets {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Other current assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncreaseDecreaseInOtherOperatingAssets' xlink:to='lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfCashFlowsAbstract' xlink:label='us-gaap_StatementOfCashFlowsAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StatementOfCashFlowsAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Condensed Consolidated Statements of Cash Flows (Unaudited)</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_StatementOfCashFlowsAbstract' xlink:to='lab_us-gaap_StatementOfCashFlowsAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockCommonMember' xlink:label='us-gaap_TreasuryStockCommonMember'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_TreasuryStockCommonMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Treasury Stock, Common</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_TreasuryStockCommonMember' xlink:to='lab_us-gaap_TreasuryStockCommonMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities' xlink:label='us-gaap_Liabilities'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_Liabilities' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Total liabilities</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_Liabilities' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Total liabilities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_Liabilities' xlink:to='lab_us-gaap_Liabilities'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent' xlink:label='us-gaap_EmployeeRelatedLiabilitiesCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_EmployeeRelatedLiabilitiesCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accrued wages and salaries</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_EmployeeRelatedLiabilitiesCurrent' xlink:to='lab_us-gaap_EmployeeRelatedLiabilitiesCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrentAbstract' xlink:label='us-gaap_LiabilitiesCurrentAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LiabilitiesCurrentAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Current Liabilities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LiabilitiesCurrentAbstract' xlink:to='lab_us-gaap_LiabilitiesCurrentAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxAssetsNet' xlink:label='us-gaap_DeferredIncomeTaxAssetsNet'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_DeferredIncomeTaxAssetsNet' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Deferred income taxes, net</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_DeferredIncomeTaxAssetsNet' xlink:to='lab_us-gaap_DeferredIncomeTaxAssetsNet'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' xlink:label='us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Less accumulated depreciation</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' xlink:to='lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LandAndLandImprovements' xlink:label='us-gaap_LandAndLandImprovements'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LandAndLandImprovements' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Land and improvements</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LandAndLandImprovements' xlink:to='lab_us-gaap_LandAndLandImprovements'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsCurrent' xlink:label='us-gaap_OtherAssetsCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OtherAssetsCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Other current assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OtherAssetsCurrent' xlink:to='lab_us-gaap_OtherAssetsCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentQuarterlyReport' xlink:label='dei_DocumentQuarterlyReport'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_DocumentQuarterlyReport' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Document Quarterly Report</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_DocumentQuarterlyReport' xlink:to='lab_dei_DocumentQuarterlyReport'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode' xlink:label='dei_EntityIncorporationStateCountryCode'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityIncorporationStateCountryCode' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Incorporation, State or Country Code</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityIncorporationStateCountryCode' xlink:to='lab_dei_EntityIncorporationStateCountryCode'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/country/2023/country-2023.xsd#country_US' xlink:label='country_US'/>
		<link:label xlink:type='resource' xlink:label='lab_country_US' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>UNITED STATES</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='country_US' xlink:to='lab_country_US'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis' xlink:label='srt_StatementGeographicalAxis'/>
		<link:label xlink:type='resource' xlink:label='lab_srt_StatementGeographicalAxis' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Geographical [Axis]</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='srt_StatementGeographicalAxis' xlink:to='lab_srt_StatementGeographicalAxis'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxPolicyTextBlock' xlink:label='us-gaap_IncomeTaxPolicyTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeTaxPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Income Taxes {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeTaxPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Income Taxes</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncomeTaxPolicyTextBlock' xlink:to='lab_us-gaap_IncomeTaxPolicyTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis' xlink:label='srt_RangeAxis'/>
		<link:label xlink:type='resource' xlink:label='lab_srt_RangeAxis' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Statistical Measurement [Axis]</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='srt_RangeAxis' xlink:to='lab_srt_RangeAxis'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit' xlink:label='us-gaap_DeferredIncomeTaxExpenseBenefit'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_DeferredIncomeTaxExpenseBenefit' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Deferred income taxes</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_DeferredIncomeTaxExpenseBenefit' xlink:to='lab_us-gaap_DeferredIncomeTaxExpenseBenefit'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember' xlink:label='us-gaap_CommonStockMember'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CommonStockMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Common Stock</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CommonStockMember' xlink:to='lab_us-gaap_CommonStockMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Revenues' xlink:label='us-gaap_Revenues'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_Revenues' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Net sales</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_Revenues' xlink:to='lab_us-gaap_Revenues'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockParOrStatedValuePerShare' xlink:label='us-gaap_CommonStockParOrStatedValuePerShare'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CommonStockParOrStatedValuePerShare' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Common Stock, Par or Stated Value Per Share</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CommonStockParOrStatedValuePerShare' xlink:to='lab_us-gaap_CommonStockParOrStatedValuePerShare'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent' xlink:label='us-gaap_AccountsPayableCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AccountsPayableCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accounts payable</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AccountsPayableCurrent' xlink:to='lab_us-gaap_AccountsPayableCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingsAndImprovementsGross' xlink:label='us-gaap_BuildingsAndImprovementsGross'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_BuildingsAndImprovementsGross' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Buildings and improvements</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_BuildingsAndImprovementsGross' xlink:to='lab_us-gaap_BuildingsAndImprovementsGross'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent' xlink:label='dei_EntityInteractiveDataCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityInteractiveDataCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Interactive Data Current</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityInteractiveDataCurrent' xlink:to='lab_dei_EntityInteractiveDataCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol' xlink:label='dei_TradingSymbol'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_TradingSymbol' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Trading Symbol</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_TradingSymbol' xlink:to='lab_dei_TradingSymbol'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryGross' xlink:label='us-gaap_InventoryGross'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InventoryGross' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Inventories, gross</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_InventoryGross' xlink:to='lab_us-gaap_InventoryGross'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_EndMarketMember' xlink:label='fil_EndMarketMember'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_EndMarketMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>End Market</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_EndMarketMember' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the End Market, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_EndMarketMember' xlink:to='lab_fil_EndMarketMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireHeldToMaturitySecurities' xlink:label='us-gaap_PaymentsToAcquireHeldToMaturitySecurities'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PaymentsToAcquireHeldToMaturitySecurities' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Purchases of short-term investments</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PaymentsToAcquireHeldToMaturitySecurities' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Purchases of short-term investments</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PaymentsToAcquireHeldToMaturitySecurities' xlink:to='lab_us-gaap_PaymentsToAcquireHeldToMaturitySecurities'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember' xlink:label='us-gaap_AdditionalPaidInCapitalMember'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AdditionalPaidInCapitalMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Additional Paid-in Capital</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AdditionalPaidInCapitalMember' xlink:to='lab_us-gaap_AdditionalPaidInCapitalMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesOutstanding' xlink:label='us-gaap_PreferredStockSharesOutstanding'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PreferredStockSharesOutstanding' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Preferred Stock, Shares Outstanding</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PreferredStockSharesOutstanding' xlink:to='lab_us-gaap_PreferredStockSharesOutstanding'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesAuthorized' xlink:label='us-gaap_PreferredStockSharesAuthorized'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PreferredStockSharesAuthorized' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Preferred Stock, Shares Authorized</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PreferredStockSharesAuthorized' xlink:to='lab_us-gaap_PreferredStockSharesAuthorized'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract' xlink:label='us-gaap_CommitmentsAndContingenciesDisclosureAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Commitments and contingencies (Note 3)</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CommitmentsAndContingenciesDisclosureAbstract' xlink:to='lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MachineryAndEquipmentGross' xlink:label='us-gaap_MachineryAndEquipmentGross'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_MachineryAndEquipmentGross' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Production equipment and other</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_MachineryAndEquipmentGross' xlink:to='lab_us-gaap_MachineryAndEquipmentGross'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus' xlink:label='dei_DocumentFiscalPeriodFocus'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_DocumentFiscalPeriodFocus' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Document Fiscal Period Focus</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_DocumentFiscalPeriodFocus' xlink:to='lab_dei_DocumentFiscalPeriodFocus'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany' xlink:label='dei_EntityShellCompany'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityShellCompany' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Shell Company</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityShellCompany' xlink:to='lab_dei_EntityShellCompany'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' xlink:label='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Revenue {2}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Revenue</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' xlink:to='lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PolicyTextBlockAbstract' xlink:label='us-gaap_PolicyTextBlockAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PolicyTextBlockAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Policies</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PolicyTextBlockAbstract' xlink:to='lab_us-gaap_PolicyTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsOfDividendsCommonStock' xlink:label='us-gaap_PaymentsOfDividendsCommonStock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PaymentsOfDividendsCommonStock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Cash dividends paid</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PaymentsOfDividendsCommonStock' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Cash dividends paid</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PaymentsOfDividendsCommonStock' xlink:to='lab_us-gaap_PaymentsOfDividendsCommonStock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities' xlink:label='us-gaap_NetCashProvidedByUsedInInvestingActivities'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NetCashProvidedByUsedInInvestingActivities' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Net cash provided by investing activities</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NetCashProvidedByUsedInInvestingActivities' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Net cash provided by investing activities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_NetCashProvidedByUsedInInvestingActivities' xlink:to='lab_us-gaap_NetCashProvidedByUsedInInvestingActivities'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract' xlink:label='us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Cash flows from investing activities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract' xlink:to='lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding' xlink:label='us-gaap_CommonStockSharesOutstanding'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CommonStockSharesOutstanding' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Common Stock, Shares, Outstanding</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CommonStockSharesOutstanding' xlink:role='http://www.xbrl.org/2003/role/periodStartLabel' xml:lang='en-US'>Common Stock Shares</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CommonStockSharesOutstanding' xlink:role='http://www.xbrl.org/2003/role/periodEndLabel' xml:lang='en-US'>Common Stock Shares</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CommonStockSharesOutstanding' xlink:to='lab_us-gaap_CommonStockSharesOutstanding'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract' xlink:label='us-gaap_StatementOfFinancialPositionAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StatementOfFinancialPositionAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Condensed Consolidated Balance Sheets (Unaudited)</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StatementOfFinancialPositionAbstract' xlink:role='http://www.xbrl.org/2003/role/verboseLabel' xml:lang='en-US'>Condensed Consolidated Balance Sheets (Unaudited) - Parenthetical</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_StatementOfFinancialPositionAbstract' xlink:to='lab_us-gaap_StatementOfFinancialPositionAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate' xlink:label='dei_CurrentFiscalYearEndDate'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_CurrentFiscalYearEndDate' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Fiscal Year End</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_CurrentFiscalYearEndDate' xlink:to='lab_dei_CurrentFiscalYearEndDate'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_AssemblyEquipmentMember' xlink:label='fil_AssemblyEquipmentMember'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_AssemblyEquipmentMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Assembly Equipment</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_AssemblyEquipmentMember' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the Assembly Equipment, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_AssemblyEquipmentMember' xlink:to='lab_fil_AssemblyEquipmentMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain' xlink:label='srt_ProductsAndServicesDomain'/>
		<link:label xlink:type='resource' xlink:label='lab_srt_ProductsAndServicesDomain' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Product and Service</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='srt_ProductsAndServicesDomain' xlink:to='lab_srt_ProductsAndServicesDomain'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock' xlink:label='us-gaap_BasisOfAccountingPolicyPolicyTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accounting Policies {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Accounting Policies</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_BasisOfAccountingPolicyPolicyTextBlock' xlink:to='lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_DisclosureTextBlockAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Notes</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='lab_us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnDispositionOfAssets' xlink:label='us-gaap_GainLossOnDispositionOfAssets'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_GainLossOnDispositionOfAssets' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Gain on disposal of equipment</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_GainLossOnDispositionOfAssets' xlink:to='lab_us-gaap_GainLossOnDispositionOfAssets'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare' xlink:label='us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Diluted net loss per share</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare' xlink:to='lab_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' xlink:label='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Loss before income taxes</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Loss before income taxes</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' xlink:to='lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfRevenue' xlink:label='us-gaap_CostOfRevenue'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CostOfRevenue' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Cost of goods sold</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CostOfRevenue' xlink:to='lab_us-gaap_CostOfRevenue'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity' xlink:label='us-gaap_LiabilitiesAndStockholdersEquity'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LiabilitiesAndStockholdersEquity' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Total liabilities and shareholders&apos; equity</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LiabilitiesAndStockholdersEquity' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Total liabilities and shareholders&apos; equity</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LiabilitiesAndStockholdersEquity' xlink:to='lab_us-gaap_LiabilitiesAndStockholdersEquity'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit' xlink:label='us-gaap_RetainedEarningsAccumulatedDeficit'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_RetainedEarningsAccumulatedDeficit' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Retained earnings</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_RetainedEarningsAccumulatedDeficit' xlink:to='lab_us-gaap_RetainedEarningsAccumulatedDeficit'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness' xlink:label='dei_EntitySmallBusiness'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntitySmallBusiness' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Small Business</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntitySmallBusiness' xlink:to='lab_dei_EntitySmallBusiness'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber' xlink:label='dei_EntityTaxIdentificationNumber'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityTaxIdentificationNumber' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Tax Identification Number</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityTaxIdentificationNumber' xlink:to='lab_dei_EntityTaxIdentificationNumber'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis' xlink:label='us-gaap_StatementBusinessSegmentsAxis'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StatementBusinessSegmentsAxis' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Segments [Axis]</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_StatementBusinessSegmentsAxis' xlink:to='lab_us-gaap_StatementBusinessSegmentsAxis'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock' xlink:label='us-gaap_DisaggregationOfRevenueTableTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_DisaggregationOfRevenueTableTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Disaggregation of Revenue</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_DisaggregationOfRevenueTableTextBlock' xlink:to='lab_us-gaap_DisaggregationOfRevenueTableTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingPolicyPolicyTextBlock' xlink:label='us-gaap_SegmentReportingPolicyPolicyTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_SegmentReportingPolicyPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Segment Reporting {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_SegmentReportingPolicyPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Segment Reporting</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_SegmentReportingPolicyPolicyTextBlock' xlink:to='lab_us-gaap_SegmentReportingPolicyPolicyTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract' xlink:label='us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Cash flows from financing activities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract' xlink:to='lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfStockholdersEquityAbstract' xlink:label='us-gaap_StatementOfStockholdersEquityAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StatementOfStockholdersEquityAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Condensed Consolidated Statements of Shareholders&apos; Equity (Unaudited)</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StatementOfStockholdersEquityAbstract' xlink:role='http://www.xbrl.org/2003/role/verboseLabel' xml:lang='en-US'>Condensed Consolidated Statements of Shareholders&apos; Equity (Unaudited) - Parenthetical</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_StatementOfStockholdersEquityAbstract' xlink:to='lab_us-gaap_StatementOfStockholdersEquityAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract' xlink:label='us-gaap_EarningsPerShareAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_EarningsPerShareAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Per share data</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_EarningsPerShareAbstract' xlink:to='lab_us-gaap_EarningsPerShareAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingExpenses' xlink:label='us-gaap_OperatingExpenses'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OperatingExpenses' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Selling and administrative expenses</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OperatingExpenses' xlink:to='lab_us-gaap_OperatingExpenses'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent' xlink:label='us-gaap_AssetsCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AssetsCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Total current assets</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AssetsCurrent' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Total current assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AssetsCurrent' xlink:to='lab_us-gaap_AssetsCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag' xlink:label='dei_AmendmentFlag'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_AmendmentFlag' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Amendment Flag</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_AmendmentFlag' xlink:to='lab_dei_AmendmentFlag'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany' xlink:label='dei_EntityEmergingGrowthCompany'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityEmergingGrowthCompany' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Emerging Growth Company</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityEmergingGrowthCompany' xlink:to='lab_dei_EntityEmergingGrowthCompany'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryWorkInProcess' xlink:label='us-gaap_InventoryWorkInProcess'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InventoryWorkInProcess' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Work-in-process</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_InventoryWorkInProcess' xlink:to='lab_us-gaap_InventoryWorkInProcess'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock' xlink:label='us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Schedule of Segment Reporting by Segment</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock' xlink:to='lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember' xlink:label='srt_MinimumMember'/>
		<link:label xlink:type='resource' xlink:label='lab_srt_MinimumMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Minimum</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='srt_MinimumMember' xlink:to='lab_srt_MinimumMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect' xlink:label='us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Net decrease in cash and cash equivalents</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Net decrease in cash and cash equivalents</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect' xlink:to='lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:label='us-gaap_NetCashProvidedByUsedInOperatingActivities'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Net cash used in operating activities</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Net cash used in operating activities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='lab_us-gaap_NetCashProvidedByUsedInOperatingActivities'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInCustomerAdvancesAndDeposits' xlink:label='us-gaap_IncreaseDecreaseInCustomerAdvancesAndDeposits'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInCustomerAdvancesAndDeposits' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Unearned revenue and customer deposits {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInCustomerAdvancesAndDeposits' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Unearned revenue and customer deposits</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncreaseDecreaseInCustomerAdvancesAndDeposits' xlink:to='lab_us-gaap_IncreaseDecreaseInCustomerAdvancesAndDeposits'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract' xlink:label='us-gaap_IncreaseDecreaseInOperatingCapitalAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Changes in operating assets and liabilities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncreaseDecreaseInOperatingCapitalAbstract' xlink:to='lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract' xlink:label='us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Adjustments to reconcile net loss to net cash used in operating activities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract' xlink:to='lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity' xlink:label='us-gaap_StockholdersEquity'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StockholdersEquity' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Total shareholders&apos; equity</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StockholdersEquity' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Total shareholders&apos; equity</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StockholdersEquity' xlink:role='http://www.xbrl.org/2003/role/periodStartLabel' xml:lang='en-US'>Beginning Balance</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StockholdersEquity' xlink:role='http://www.xbrl.org/2003/role/periodEndLabel' xml:lang='en-US'>Ending Balance</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_StockholdersEquity' xlink:to='lab_us-gaap_StockholdersEquity'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityAbstract' xlink:label='us-gaap_StockholdersEquityAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StockholdersEquityAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Shareholders&apos; Equity</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_StockholdersEquityAbstract' xlink:to='lab_us-gaap_StockholdersEquityAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract' xlink:label='us-gaap_LiabilitiesAndStockholdersEquityAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Liabilities and Shareholders&apos; Equity</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LiabilitiesAndStockholdersEquityAbstract' xlink:to='lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets' xlink:label='us-gaap_Assets'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_Assets' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Total assets</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_Assets' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Total assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_Assets' xlink:to='lab_us-gaap_Assets'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidTaxes' xlink:label='us-gaap_PrepaidTaxes'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PrepaidTaxes' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Income taxes receivable</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PrepaidTaxes' xlink:to='lab_us-gaap_PrepaidTaxes'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus' xlink:label='dei_DocumentFiscalYearFocus'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_DocumentFiscalYearFocus' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Document Fiscal Year Focus</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_DocumentFiscalYearFocus' xlink:to='lab_dei_DocumentFiscalYearFocus'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssets' xlink:label='us-gaap_OtherAssets'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OtherAssets' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Other Assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OtherAssets' xlink:to='lab_us-gaap_OtherAssets'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryValuationReserves' xlink:label='us-gaap_InventoryValuationReserves'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InventoryValuationReserves' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Valuation reserves</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InventoryValuationReserves' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Valuation reserves</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_InventoryValuationReserves' xlink:to='lab_us-gaap_InventoryValuationReserves'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterials' xlink:label='us-gaap_InventoryRawMaterials'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InventoryRawMaterials' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Raw material</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_InventoryRawMaterials' xlink:to='lab_us-gaap_InventoryRawMaterials'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember' xlink:label='srt_MaximumMember'/>
		<link:label xlink:type='resource' xlink:label='lab_srt_MaximumMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Maximum</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='srt_MaximumMember' xlink:to='lab_srt_MaximumMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock' xlink:label='us-gaap_RevenueFromContractWithCustomerTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_RevenueFromContractWithCustomerTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Revenue</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_RevenueFromContractWithCustomerTextBlock' xlink:to='lab_us-gaap_RevenueFromContractWithCustomerTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockMember' xlink:label='us-gaap_PreferredStockMember'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PreferredStockMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Preferred Stock</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PreferredStockMember' xlink:to='lab_us-gaap_PreferredStockMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit' xlink:label='us-gaap_GrossProfit'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_GrossProfit' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Gross profit</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_GrossProfit' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Gross profit</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_GrossProfit' xlink:to='lab_us-gaap_GrossProfit'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent' xlink:label='us-gaap_LiabilitiesCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LiabilitiesCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Total current liabilities</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LiabilitiesCurrent' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Total current liabilities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LiabilitiesCurrent' xlink:to='lab_us-gaap_LiabilitiesCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentGross' xlink:label='us-gaap_PropertyPlantAndEquipmentGross'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PropertyPlantAndEquipmentGross' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Property, Plant and Equipment, Gross</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PropertyPlantAndEquipmentGross' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Property, Plant and Equipment, Gross</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PropertyPlantAndEquipmentGross' xlink:to='lab_us-gaap_PropertyPlantAndEquipmentGross'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport' xlink:label='dei_DocumentTransitionReport'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_DocumentTransitionReport' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Document Transition Report</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_DocumentTransitionReport' xlink:to='lab_dei_DocumentTransitionReport'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding' xlink:label='dei_EntityCommonStockSharesOutstanding'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityCommonStockSharesOutstanding' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Common Stock, Shares Outstanding</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityCommonStockSharesOutstanding' xlink:to='lab_dei_EntityCommonStockSharesOutstanding'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_SegmentOperatingprofit' xlink:label='fil_SegmentOperatingprofit'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_SegmentOperatingprofit' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Segment operating profit</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_SegmentOperatingprofit' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>The net result for the period of deducting segment operating expenses from segment operating revenues.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_SegmentOperatingprofit' xlink:to='lab_fil_SegmentOperatingprofit'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_FastenerMember' xlink:label='fil_FastenerMember'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_FastenerMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Fastener</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_FastenerMember' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the Fastener, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_FastenerMember' xlink:to='lab_fil_FastenerMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureTextBlock' xlink:label='us-gaap_InventoryDisclosureTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InventoryDisclosureTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Inventories {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InventoryDisclosureTextBlock' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Inventories</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_InventoryDisclosureTextBlock' xlink:to='lab_us-gaap_InventoryDisclosureTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureTextBlock' xlink:label='us-gaap_IncomeTaxDisclosureTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeTaxDisclosureTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Income Taxes</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncomeTaxDisclosureTextBlock' xlink:to='lab_us-gaap_IncomeTaxDisclosureTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock' xlink:label='us-gaap_ConcentrationRiskDisclosureTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ConcentrationRiskDisclosureTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Risks and Uncertainties</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ConcentrationRiskDisclosureTextBlock' xlink:to='lab_us-gaap_ConcentrationRiskDisclosureTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesIssued' xlink:label='us-gaap_CommonStockSharesIssued'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CommonStockSharesIssued' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Common Stock, Shares, Issued</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CommonStockSharesIssued' xlink:to='lab_us-gaap_CommonStockSharesIssued'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockValue' xlink:label='us-gaap_PreferredStockValue'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PreferredStockValue' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Preferred stock, no par value, 500,000 shares authorized: none outstanding</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PreferredStockValue' xlink:to='lab_us-gaap_PreferredStockValue'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory' xlink:label='dei_EntityFilerCategory'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityFilerCategory' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Filer Category</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityFilerCategory' xlink:to='lab_dei_EntityFilerCategory'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus' xlink:label='dei_EntityCurrentReportingStatus'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityCurrentReportingStatus' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Current Reporting Status</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityCurrentReportingStatus' xlink:to='lab_dei_EntityCurrentReportingStatus'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince' xlink:label='dei_EntityAddressStateOrProvince'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityAddressStateOrProvince' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Address, State or Province</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityAddressStateOrProvince' xlink:to='lab_dei_EntityAddressStateOrProvince'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_AutomotiveMember' xlink:label='fil_AutomotiveMember'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_AutomotiveMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Automotive</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_AutomotiveMember' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the Automotive, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_AutomotiveMember' xlink:to='lab_fil_AutomotiveMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock' xlink:label='us-gaap_ScheduleOfInventoryCurrentTableTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Inventories {3}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Inventories</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ScheduleOfInventoryCurrentTableTextBlock' xlink:to='lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LegalMattersAndContingenciesTextBlock' xlink:label='us-gaap_LegalMattersAndContingenciesTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LegalMattersAndContingenciesTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Commitments and Contingencies {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LegalMattersAndContingenciesTextBlock' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Commitments and Contingencies</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LegalMattersAndContingenciesTextBlock' xlink:to='lab_us-gaap_LegalMattersAndContingenciesTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment' xlink:label='us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Proceeds from the sale of equipment</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment' xlink:to='lab_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayable' xlink:label='us-gaap_IncreaseDecreaseInAccountsPayable'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInAccountsPayable' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accounts payable {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInAccountsPayable' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Accounts payable</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncreaseDecreaseInAccountsPayable' xlink:to='lab_us-gaap_IncreaseDecreaseInAccountsPayable'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis' xlink:label='us-gaap_StatementEquityComponentsAxis'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StatementEquityComponentsAxis' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Equity Components [Axis]</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='lab_us-gaap_StatementEquityComponentsAxis'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding' xlink:label='us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Diluted</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding' xlink:to='lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic' xlink:label='us-gaap_WeightedAverageNumberOfSharesOutstandingBasic'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Basic</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_WeightedAverageNumberOfSharesOutstandingBasic' xlink:to='lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapital' xlink:label='us-gaap_AdditionalPaidInCapital'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AdditionalPaidInCapital' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Additional paid-in capital</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AdditionalPaidInCapital' xlink:to='lab_us-gaap_AdditionalPaidInCapital'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet' xlink:label='us-gaap_InventoryNet'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InventoryNet' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Inventories, net</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_InventoryNet' xlink:to='lab_us-gaap_InventoryNet'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode' xlink:label='dei_EntityAddressPostalZipCode'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityAddressPostalZipCode' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Address, Postal Zip Code</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityAddressPostalZipCode' xlink:to='lab_dei_EntityAddressPostalZipCode'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryFinishedGoods' xlink:label='us-gaap_InventoryFinishedGoods'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InventoryFinishedGoods' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Finished goods</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_InventoryFinishedGoods' xlink:to='lab_us-gaap_InventoryFinishedGoods'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain' xlink:label='srt_SegmentGeographicalDomain'/>
		<link:label xlink:type='resource' xlink:label='lab_srt_SegmentGeographicalDomain' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Geographical</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='srt_SegmentGeographicalDomain' xlink:to='lab_srt_SegmentGeographicalDomain'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember' xlink:label='srt_RangeMember'/>
		<link:label xlink:type='resource' xlink:label='lab_srt_RangeMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Statistical Measurement</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='srt_RangeMember' xlink:to='lab_srt_RangeMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SignificantAccountingPoliciesTextBlock' xlink:label='us-gaap_SignificantAccountingPoliciesTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_SignificantAccountingPoliciesTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accounting Policies</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_SignificantAccountingPoliciesTextBlock' xlink:to='lab_us-gaap_SignificantAccountingPoliciesTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireProductiveAssets' xlink:label='us-gaap_PaymentsToAcquireProductiveAssets'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PaymentsToAcquireProductiveAssets' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Capital expenditures</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PaymentsToAcquireProductiveAssets' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Capital expenditures</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PaymentsToAcquireProductiveAssets' xlink:to='lab_us-gaap_PaymentsToAcquireProductiveAssets'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpense' xlink:label='us-gaap_OtherNonoperatingIncomeExpense'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OtherNonoperatingIncomeExpense' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Other income</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OtherNonoperatingIncomeExpense' xlink:to='lab_us-gaap_OtherNonoperatingIncomeExpense'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet' xlink:label='us-gaap_PropertyPlantAndEquipmentNet'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PropertyPlantAndEquipmentNet' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Net property, plant and equipment</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PropertyPlantAndEquipmentNet' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Net property, plant and equipment</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PropertyPlantAndEquipmentNet' xlink:role='http://www.xbrl.org/2003/role/verboseLabel' xml:lang='en-US'>Net property, plant and equipment</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PropertyPlantAndEquipmentNet' xlink:to='lab_us-gaap_PropertyPlantAndEquipmentNet'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetNetCurrent' xlink:label='us-gaap_ContractWithCustomerAssetNetCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ContractWithCustomerAssetNetCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Contract assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ContractWithCustomerAssetNetCurrent' xlink:to='lab_us-gaap_ContractWithCustomerAssetNetCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber' xlink:label='dei_LocalPhoneNumber'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_LocalPhoneNumber' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Local Phone Number</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_LocalPhoneNumber' xlink:to='lab_dei_LocalPhoneNumber'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName' xlink:label='dei_EntityRegistrantName'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityRegistrantName' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Registrant Name</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityRegistrantName' xlink:to='lab_dei_EntityRegistrantName'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey' xlink:label='dei_EntityCentralIndexKey'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityCentralIndexKey' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Registrant CIK</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityCentralIndexKey' xlink:to='lab_dei_EntityCentralIndexKey'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestAndOtherIncome' xlink:label='us-gaap_InterestAndOtherIncome'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InterestAndOtherIncome' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Interest income</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_InterestAndOtherIncome' xlink:to='lab_us-gaap_InterestAndOtherIncome'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis' xlink:label='srt_ProductOrServiceAxis'/>
		<link:label xlink:type='resource' xlink:label='lab_srt_ProductOrServiceAxis' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Product and Service [Axis]</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='srt_ProductOrServiceAxis' xlink:to='lab_srt_ProductOrServiceAxis'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities' xlink:label='us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Proceeds from short-term investments</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities' xlink:to='lab_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StatementLineItems' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Statement [Line Items]</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_StatementLineItems' xlink:to='lab_us-gaap_StatementLineItems'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentAbstract' xlink:label='us-gaap_PropertyPlantAndEquipmentAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PropertyPlantAndEquipmentAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Property, Plant and Equipment</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PropertyPlantAndEquipmentAbstract' xlink:to='lab_us-gaap_PropertyPlantAndEquipmentAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent' xlink:label='us-gaap_AccountsReceivableNetCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AccountsReceivableNetCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accounts receivable - Less allowances of $160,000</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AccountsReceivableNetCurrent' xlink:role='http://www.xbrl.org/2003/role/verboseLabel' xml:lang='en-US'>Accounts receivable - Less allowances of $160,000</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AccountsReceivableNetCurrent' xlink:to='lab_us-gaap_AccountsReceivableNetCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle' xlink:label='dei_Security12bTitle'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_Security12bTitle' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Title of 12(b) Security</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_Security12bTitle' xlink:to='lab_dei_Security12bTitle'/>
	</link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>10
<FILENAME>cvr-20240331_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE
<TEXT>
<XBRL>
<?xml version='1.0' encoding='iso-8859-1'?>
<!-- Produced by EDGARsuite software, Advanced Computer Innovations, Inc., Copyright (C) 2008-2023 [PPXC1A0KDJ2KVDRZ9JZY]. www.edgarsuite.com -->
<link:linkbase xmlns="http://www.xbrl.org/2003/linkbase"
		xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
		xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd"
		xmlns:fil="http://www.chicagorivet.com/20240331"
		xmlns:link="http://www.xbrl.org/2003/linkbase"
		xmlns:xlink="http://www.w3.org/1999/xlink"
		xmlns:xbrldt="http://xbrl.org/2005/xbrldt"
		xmlns:xbrli="http://www.xbrl.org/2003/instance">
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DocumentDocumentAndEntityInformation"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey' xlink:label='dei_EntityCentralIndexKey'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityCentralIndexKey' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate' xlink:label='dei_CurrentFiscalYearEndDate'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_CurrentFiscalYearEndDate' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType' xlink:label='dei_DocumentType'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_DocumentType' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate' xlink:label='dei_DocumentPeriodEndDate'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_DocumentPeriodEndDate' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber' xlink:label='dei_EntityFileNumber'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityFileNumber' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName' xlink:label='dei_EntityRegistrantName'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityRegistrantName' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode' xlink:label='dei_EntityIncorporationStateCountryCode'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityIncorporationStateCountryCode' use='optional' order='7.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber' xlink:label='dei_EntityTaxIdentificationNumber'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityTaxIdentificationNumber' use='optional' order='8.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1' xlink:label='dei_EntityAddressAddressLine1'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityAddressAddressLine1' use='optional' order='9.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown' xlink:label='dei_EntityAddressCityOrTown'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityAddressCityOrTown' use='optional' order='10.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince' xlink:label='dei_EntityAddressStateOrProvince'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityAddressStateOrProvince' use='optional' order='11.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode' xlink:label='dei_EntityAddressPostalZipCode'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityAddressPostalZipCode' use='optional' order='12.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode' xlink:label='dei_CityAreaCode'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_CityAreaCode' use='optional' order='13.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber' xlink:label='dei_LocalPhoneNumber'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_LocalPhoneNumber' use='optional' order='14.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle' xlink:label='dei_Security12bTitle'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_Security12bTitle' use='optional' order='15.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol' xlink:label='dei_TradingSymbol'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_TradingSymbol' use='optional' order='16.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName' xlink:label='dei_SecurityExchangeName'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_SecurityExchangeName' use='optional' order='17.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus' xlink:label='dei_EntityCurrentReportingStatus'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityCurrentReportingStatus' use='optional' order='18.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent' xlink:label='dei_EntityInteractiveDataCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityInteractiveDataCurrent' use='optional' order='19.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory' xlink:label='dei_EntityFilerCategory'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityFilerCategory' use='optional' order='20.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness' xlink:label='dei_EntitySmallBusiness'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntitySmallBusiness' use='optional' order='21.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany' xlink:label='dei_EntityEmergingGrowthCompany'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityEmergingGrowthCompany' use='optional' order='22.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany' xlink:label='dei_EntityShellCompany'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityShellCompany' use='optional' order='23.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding' xlink:label='dei_EntityCommonStockSharesOutstanding'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityCommonStockSharesOutstanding' use='optional' order='24.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag' xlink:label='dei_AmendmentFlag'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_AmendmentFlag' use='optional' order='25.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus' xlink:label='dei_DocumentFiscalYearFocus'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_DocumentFiscalYearFocus' use='optional' order='26.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus' xlink:label='dei_DocumentFiscalPeriodFocus'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_DocumentFiscalPeriodFocus' use='optional' order='27.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentQuarterlyReport' xlink:label='dei_DocumentQuarterlyReport'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_DocumentQuarterlyReport' use='optional' order='28.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport' xlink:label='dei_DocumentTransitionReport'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_DocumentTransitionReport' use='optional' order='29.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract' xlink:label='us-gaap_StatementOfFinancialPositionAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsAbstract' xlink:label='us-gaap_AssetsAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementOfFinancialPositionAbstract' xlink:to='us-gaap_AssetsAbstract' use='optional' order='1.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrentAbstract' xlink:label='us-gaap_AssetsCurrentAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AssetsAbstract' xlink:to='us-gaap_AssetsCurrentAbstract' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue' xlink:label='us-gaap_CashAndCashEquivalentsAtCarryingValue'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AssetsCurrentAbstract' xlink:to='us-gaap_CashAndCashEquivalentsAtCarryingValue' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShortTermInvestments' xlink:label='us-gaap_ShortTermInvestments'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AssetsCurrentAbstract' xlink:to='us-gaap_ShortTermInvestments' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent' xlink:label='us-gaap_AccountsReceivableNetCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AssetsCurrentAbstract' xlink:to='us-gaap_AccountsReceivableNetCurrent' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetNetCurrent' xlink:label='us-gaap_ContractWithCustomerAssetNetCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AssetsCurrentAbstract' xlink:to='us-gaap_ContractWithCustomerAssetNetCurrent' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet' xlink:label='us-gaap_InventoryNet'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AssetsCurrentAbstract' xlink:to='us-gaap_InventoryNet' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidTaxes' xlink:label='us-gaap_PrepaidTaxes'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AssetsCurrentAbstract' xlink:to='us-gaap_PrepaidTaxes' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsCurrent' xlink:label='us-gaap_OtherAssetsCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AssetsCurrentAbstract' xlink:to='us-gaap_OtherAssetsCurrent' use='optional' order='7.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent' xlink:label='us-gaap_AssetsCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AssetsCurrentAbstract' xlink:to='us-gaap_AssetsCurrent' use='optional' order='8.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentAbstract' xlink:label='us-gaap_PropertyPlantAndEquipmentAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AssetsAbstract' xlink:to='us-gaap_PropertyPlantAndEquipmentAbstract' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LandAndLandImprovements' xlink:label='us-gaap_LandAndLandImprovements'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PropertyPlantAndEquipmentAbstract' xlink:to='us-gaap_LandAndLandImprovements' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BuildingsAndImprovementsGross' xlink:label='us-gaap_BuildingsAndImprovementsGross'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PropertyPlantAndEquipmentAbstract' xlink:to='us-gaap_BuildingsAndImprovementsGross' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MachineryAndEquipmentGross' xlink:label='us-gaap_MachineryAndEquipmentGross'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PropertyPlantAndEquipmentAbstract' xlink:to='us-gaap_MachineryAndEquipmentGross' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentGross' xlink:label='us-gaap_PropertyPlantAndEquipmentGross'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PropertyPlantAndEquipmentAbstract' xlink:to='us-gaap_PropertyPlantAndEquipmentGross' use='optional' order='4.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' xlink:label='us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PropertyPlantAndEquipmentAbstract' xlink:to='us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet' xlink:label='us-gaap_PropertyPlantAndEquipmentNet'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PropertyPlantAndEquipmentAbstract' xlink:to='us-gaap_PropertyPlantAndEquipmentNet' use='optional' order='6.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxAssetsNet' xlink:label='us-gaap_DeferredIncomeTaxAssetsNet'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AssetsAbstract' xlink:to='us-gaap_DeferredIncomeTaxAssetsNet' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets' xlink:label='us-gaap_Assets'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AssetsAbstract' xlink:to='us-gaap_Assets' use='optional' order='4.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract' xlink:label='us-gaap_LiabilitiesAndStockholdersEquityAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementOfFinancialPositionAbstract' xlink:to='us-gaap_LiabilitiesAndStockholdersEquityAbstract' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrentAbstract' xlink:label='us-gaap_LiabilitiesCurrentAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_LiabilitiesAndStockholdersEquityAbstract' xlink:to='us-gaap_LiabilitiesCurrentAbstract' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent' xlink:label='us-gaap_AccountsPayableCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_LiabilitiesCurrentAbstract' xlink:to='us-gaap_AccountsPayableCurrent' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent' xlink:label='us-gaap_EmployeeRelatedLiabilitiesCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_LiabilitiesCurrentAbstract' xlink:to='us-gaap_EmployeeRelatedLiabilitiesCurrent' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent' xlink:label='us-gaap_AccruedLiabilitiesCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_LiabilitiesCurrentAbstract' xlink:to='us-gaap_AccruedLiabilitiesCurrent' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CustomerAdvancesAndDepositsCurrent' xlink:label='us-gaap_CustomerAdvancesAndDepositsCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_LiabilitiesCurrentAbstract' xlink:to='us-gaap_CustomerAdvancesAndDepositsCurrent' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent' xlink:label='us-gaap_LiabilitiesCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_LiabilitiesCurrentAbstract' xlink:to='us-gaap_LiabilitiesCurrent' use='optional' order='5.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities' xlink:label='us-gaap_Liabilities'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_LiabilitiesAndStockholdersEquityAbstract' xlink:to='us-gaap_Liabilities' use='optional' order='2.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityAbstract' xlink:label='us-gaap_StockholdersEquityAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_LiabilitiesAndStockholdersEquityAbstract' xlink:to='us-gaap_StockholdersEquityAbstract' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockValue' xlink:label='us-gaap_PreferredStockValue'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StockholdersEquityAbstract' xlink:to='us-gaap_PreferredStockValue' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValueOutstanding' xlink:label='us-gaap_CommonStockValueOutstanding'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StockholdersEquityAbstract' xlink:to='us-gaap_CommonStockValueOutstanding' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapital' xlink:label='us-gaap_AdditionalPaidInCapital'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StockholdersEquityAbstract' xlink:to='us-gaap_AdditionalPaidInCapital' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit' xlink:label='us-gaap_RetainedEarningsAccumulatedDeficit'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StockholdersEquityAbstract' xlink:to='us-gaap_RetainedEarningsAccumulatedDeficit' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockValue' xlink:label='us-gaap_TreasuryStockValue'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StockholdersEquityAbstract' xlink:to='us-gaap_TreasuryStockValue' use='optional' order='5.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity' xlink:label='us-gaap_StockholdersEquity'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StockholdersEquityAbstract' xlink:to='us-gaap_StockholdersEquity' use='optional' order='6.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity' xlink:label='us-gaap_LiabilitiesAndStockholdersEquity'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_LiabilitiesAndStockholdersEquityAbstract' xlink:to='us-gaap_LiabilitiesAndStockholdersEquity' use='optional' order='4.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract' xlink:label='us-gaap_CommitmentsAndContingenciesDisclosureAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementOfFinancialPositionAbstract' xlink:to='us-gaap_CommitmentsAndContingenciesDisclosureAbstract' use='optional' order='3.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract' xlink:label='us-gaap_StatementOfFinancialPositionAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockParOrStatedValuePerShare' xlink:label='us-gaap_PreferredStockParOrStatedValuePerShare'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementOfFinancialPositionAbstract' xlink:to='us-gaap_PreferredStockParOrStatedValuePerShare' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesAuthorized' xlink:label='us-gaap_PreferredStockSharesAuthorized'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementOfFinancialPositionAbstract' xlink:to='us-gaap_PreferredStockSharesAuthorized' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesOutstanding' xlink:label='us-gaap_PreferredStockSharesOutstanding'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementOfFinancialPositionAbstract' xlink:to='us-gaap_PreferredStockSharesOutstanding' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockParOrStatedValuePerShare' xlink:label='us-gaap_CommonStockParOrStatedValuePerShare'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementOfFinancialPositionAbstract' xlink:to='us-gaap_CommonStockParOrStatedValuePerShare' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesAuthorized' xlink:label='us-gaap_CommonStockSharesAuthorized'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementOfFinancialPositionAbstract' xlink:to='us-gaap_CommonStockSharesAuthorized' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesIssued' xlink:label='us-gaap_CommonStockSharesIssued'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementOfFinancialPositionAbstract' xlink:to='us-gaap_CommonStockSharesIssued' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding' xlink:label='us-gaap_CommonStockSharesOutstanding'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementOfFinancialPositionAbstract' xlink:to='us-gaap_CommonStockSharesOutstanding' use='optional' order='7.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementAbstract' xlink:label='us-gaap_IncomeStatementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Revenues' xlink:label='us-gaap_Revenues'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncomeStatementAbstract' xlink:to='us-gaap_Revenues' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfRevenue' xlink:label='us-gaap_CostOfRevenue'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncomeStatementAbstract' xlink:to='us-gaap_CostOfRevenue' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit' xlink:label='us-gaap_GrossProfit'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncomeStatementAbstract' xlink:to='us-gaap_GrossProfit' use='optional' order='3.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingExpenses' xlink:label='us-gaap_OperatingExpenses'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncomeStatementAbstract' xlink:to='us-gaap_OperatingExpenses' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss' xlink:label='us-gaap_OperatingIncomeLoss'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncomeStatementAbstract' xlink:to='us-gaap_OperatingIncomeLoss' use='optional' order='5.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpense' xlink:label='us-gaap_OtherNonoperatingIncomeExpense'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncomeStatementAbstract' xlink:to='us-gaap_OtherNonoperatingIncomeExpense' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' xlink:label='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncomeStatementAbstract' xlink:to='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' use='optional' order='7.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit' xlink:label='us-gaap_IncomeTaxExpenseBenefit'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncomeStatementAbstract' xlink:to='us-gaap_IncomeTaxExpenseBenefit' use='optional' order='8.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss' xlink:label='us-gaap_NetIncomeLoss'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncomeStatementAbstract' xlink:to='us-gaap_NetIncomeLoss' use='optional' order='9.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract' xlink:label='us-gaap_EarningsPerShareAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncomeStatementAbstract' xlink:to='us-gaap_EarningsPerShareAbstract' use='optional' order='10.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicShare' xlink:label='us-gaap_IncomeLossFromContinuingOperationsPerBasicShare'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_EarningsPerShareAbstract' xlink:to='us-gaap_IncomeLossFromContinuingOperationsPerBasicShare' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare' xlink:label='us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_EarningsPerShareAbstract' xlink:to='us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic' xlink:label='us-gaap_WeightedAverageNumberOfSharesOutstandingBasic'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncomeStatementAbstract' xlink:to='us-gaap_WeightedAverageNumberOfSharesOutstandingBasic' use='optional' order='11.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding' xlink:label='us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncomeStatementAbstract' xlink:to='us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding' use='optional' order='12.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockDividendsPerShareDeclared' xlink:label='us-gaap_CommonStockDividendsPerShareDeclared'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncomeStatementAbstract' xlink:to='us-gaap_CommonStockDividendsPerShareDeclared' use='optional' order='13.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfStockholdersEquityAbstract' xlink:label='us-gaap_StatementOfStockholdersEquityAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementOfStockholdersEquityAbstract' xlink:to='us-gaap_StatementTable' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis' xlink:label='us-gaap_StatementEquityComponentsAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementEquityComponentsAxis' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain' xlink:label='us-gaap_EquityComponentDomain'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='us-gaap_EquityComponentDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockMember' xlink:label='us-gaap_PreferredStockMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='us-gaap_PreferredStockMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember' xlink:label='us-gaap_CommonStockMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='us-gaap_CommonStockMember' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember' xlink:label='us-gaap_AdditionalPaidInCapitalMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='us-gaap_AdditionalPaidInCapitalMember' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember' xlink:label='us-gaap_RetainedEarningsMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='us-gaap_RetainedEarningsMember' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockCommonMember' xlink:label='us-gaap_TreasuryStockCommonMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='us-gaap_TreasuryStockCommonMember' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementLineItems' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity' xlink:label='us-gaap_StockholdersEquity'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StockholdersEquity' use='optional' order='1.0' preferredLabel='http://www.xbrl.org/2003/role/periodStartLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding' xlink:label='us-gaap_CommonStockSharesOutstanding'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_CommonStockSharesOutstanding' use='optional' order='2.0' preferredLabel='http://www.xbrl.org/2003/role/periodStartLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockCommonShares' xlink:label='us-gaap_TreasuryStockCommonShares'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_TreasuryStockCommonShares' use='optional' order='3.0' preferredLabel='http://www.xbrl.org/2003/role/periodStartLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss' xlink:label='us-gaap_NetIncomeLoss'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_NetIncomeLoss' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Dividends' xlink:label='us-gaap_Dividends'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_Dividends' use='optional' order='5.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity' xlink:label='us-gaap_StockholdersEquity_1'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StockholdersEquity_1' use='optional' order='6.0' preferredLabel='http://www.xbrl.org/2003/role/periodEndLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding' xlink:label='us-gaap_CommonStockSharesOutstanding_1'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_CommonStockSharesOutstanding_1' use='optional' order='7.0' preferredLabel='http://www.xbrl.org/2003/role/periodEndLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockCommonShares' xlink:label='us-gaap_TreasuryStockCommonShares_1'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_TreasuryStockCommonShares_1' use='optional' order='8.0' preferredLabel='http://www.xbrl.org/2003/role/periodEndLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnauditedParenthetical" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnauditedParenthetical"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnauditedParenthetical">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfStockholdersEquityAbstract' xlink:label='us-gaap_StatementOfStockholdersEquityAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockDividendsPerShareDeclared' xlink:label='us-gaap_CommonStockDividendsPerShareDeclared'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementOfStockholdersEquityAbstract' xlink:to='us-gaap_CommonStockDividendsPerShareDeclared' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfCashFlowsAbstract' xlink:label='us-gaap_StatementOfCashFlowsAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract' xlink:label='us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementOfCashFlowsAbstract' xlink:to='us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss' xlink:label='us-gaap_NetIncomeLoss'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract' xlink:to='us-gaap_NetIncomeLoss' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract' xlink:label='us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract' xlink:to='us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Depreciation' xlink:label='us-gaap_Depreciation'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract' xlink:to='us-gaap_Depreciation' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnDispositionOfAssets' xlink:label='us-gaap_GainLossOnDispositionOfAssets'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract' xlink:to='us-gaap_GainLossOnDispositionOfAssets' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit' xlink:label='us-gaap_DeferredIncomeTaxExpenseBenefit'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract' xlink:to='us-gaap_DeferredIncomeTaxExpenseBenefit' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract' xlink:label='us-gaap_IncreaseDecreaseInOperatingCapitalAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract' xlink:to='us-gaap_IncreaseDecreaseInOperatingCapitalAbstract' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable' xlink:label='us-gaap_IncreaseDecreaseInAccountsReceivable'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncreaseDecreaseInOperatingCapitalAbstract' xlink:to='us-gaap_IncreaseDecreaseInAccountsReceivable' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerAsset' xlink:label='us-gaap_IncreaseDecreaseInContractWithCustomerAsset'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncreaseDecreaseInOperatingCapitalAbstract' xlink:to='us-gaap_IncreaseDecreaseInContractWithCustomerAsset' use='optional' order='2.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories' xlink:label='us-gaap_IncreaseDecreaseInInventories'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncreaseDecreaseInOperatingCapitalAbstract' xlink:to='us-gaap_IncreaseDecreaseInInventories' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets' xlink:label='us-gaap_IncreaseDecreaseInOtherOperatingAssets'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncreaseDecreaseInOperatingCapitalAbstract' xlink:to='us-gaap_IncreaseDecreaseInOtherOperatingAssets' use='optional' order='4.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayable' xlink:label='us-gaap_IncreaseDecreaseInAccountsPayable'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncreaseDecreaseInOperatingCapitalAbstract' xlink:to='us-gaap_IncreaseDecreaseInAccountsPayable' use='optional' order='5.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities' xlink:label='us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncreaseDecreaseInOperatingCapitalAbstract' xlink:to='us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities' use='optional' order='6.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherAccruedLiabilities' xlink:label='us-gaap_IncreaseDecreaseInOtherAccruedLiabilities'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncreaseDecreaseInOperatingCapitalAbstract' xlink:to='us-gaap_IncreaseDecreaseInOtherAccruedLiabilities' use='optional' order='7.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInCustomerAdvancesAndDeposits' xlink:label='us-gaap_IncreaseDecreaseInCustomerAdvancesAndDeposits'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncreaseDecreaseInOperatingCapitalAbstract' xlink:to='us-gaap_IncreaseDecreaseInCustomerAdvancesAndDeposits' use='optional' order='8.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:label='us-gaap_NetCashProvidedByUsedInOperatingActivities'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract' xlink:to='us-gaap_NetCashProvidedByUsedInOperatingActivities' use='optional' order='4.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract' xlink:label='us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementOfCashFlowsAbstract' xlink:to='us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireProductiveAssets' xlink:label='us-gaap_PaymentsToAcquireProductiveAssets'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract' xlink:to='us-gaap_PaymentsToAcquireProductiveAssets' use='optional' order='1.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment' xlink:label='us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract' xlink:to='us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities' xlink:label='us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract' xlink:to='us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireHeldToMaturitySecurities' xlink:label='us-gaap_PaymentsToAcquireHeldToMaturitySecurities'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract' xlink:to='us-gaap_PaymentsToAcquireHeldToMaturitySecurities' use='optional' order='4.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities' xlink:label='us-gaap_NetCashProvidedByUsedInInvestingActivities'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract' xlink:to='us-gaap_NetCashProvidedByUsedInInvestingActivities' use='optional' order='5.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract' xlink:label='us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementOfCashFlowsAbstract' xlink:to='us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsOfDividendsCommonStock' xlink:label='us-gaap_PaymentsOfDividendsCommonStock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract' xlink:to='us-gaap_PaymentsOfDividendsCommonStock' use='optional' order='1.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities' xlink:label='us-gaap_NetCashProvidedByUsedInFinancingActivities'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract' xlink:to='us-gaap_NetCashProvidedByUsedInFinancingActivities' use='optional' order='2.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect' xlink:label='us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementOfCashFlowsAbstract' xlink:to='us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect' use='optional' order='4.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue' xlink:label='us-gaap_CashAndCashEquivalentsAtCarryingValue'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementOfCashFlowsAbstract' xlink:to='us-gaap_CashAndCashEquivalentsAtCarryingValue' use='optional' order='5.0' preferredLabel='http://www.xbrl.org/2003/role/periodStartLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue' xlink:label='us-gaap_CashAndCashEquivalentsAtCarryingValue_1'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementOfCashFlowsAbstract' xlink:to='us-gaap_CashAndCashEquivalentsAtCarryingValue_1' use='optional' order='6.0' preferredLabel='http://www.xbrl.org/2003/role/periodEndLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPolicies" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureAccountingPolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SignificantAccountingPoliciesTextBlock' xlink:label='us-gaap_SignificantAccountingPoliciesTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_SignificantAccountingPoliciesTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureRisksAndUncertainties" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureRisksAndUncertainties"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureRisksAndUncertainties">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock' xlink:label='us-gaap_ConcentrationRiskDisclosureTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_ConcentrationRiskDisclosureTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureCommitmentsAndContingencies" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureCommitmentsAndContingencies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureCommitmentsAndContingencies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LegalMattersAndContingenciesTextBlock' xlink:label='us-gaap_LegalMattersAndContingenciesTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_LegalMattersAndContingenciesTextBlock' use='optional' order='1.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenue" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureRevenue"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenue">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock' xlink:label='us-gaap_RevenueFromContractWithCustomerTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_RevenueFromContractWithCustomerTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureIncomeTaxes" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureIncomeTaxes"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureIncomeTaxes">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureTextBlock' xlink:label='us-gaap_IncomeTaxDisclosureTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_IncomeTaxDisclosureTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureInventories" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureInventories"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureInventories">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureTextBlock' xlink:label='us-gaap_InventoryDisclosureTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_InventoryDisclosureTextBlock' use='optional' order='1.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReporting" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureSegmentReporting"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReporting">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingDisclosureTextBlock' xlink:label='us-gaap_SegmentReportingDisclosureTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_SegmentReportingDisclosureTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPoliciesPolicies" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureAccountingPoliciesPolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPoliciesPolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PolicyTextBlockAbstract' xlink:label='us-gaap_PolicyTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PolicyTextBlockAbstract' xlink:to='us-gaap_StatementTable' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis' xlink:label='srt_RangeAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='srt_RangeAxis' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember' xlink:label='srt_RangeMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_RangeAxis' xlink:to='srt_RangeMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember' xlink:label='srt_MinimumMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_RangeAxis' xlink:to='srt_MinimumMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember' xlink:label='srt_MaximumMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_RangeAxis' xlink:to='srt_MaximumMember' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementLineItems' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock' xlink:label='us-gaap_BasisOfAccountingPolicyPolicyTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_BasisOfAccountingPolicyPolicyTextBlock' use='optional' order='1.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConcentrationRiskCreditRisk' xlink:label='us-gaap_ConcentrationRiskCreditRisk'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ConcentrationRiskCreditRisk' use='optional' order='2.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesPolicyTextBlock' xlink:label='us-gaap_CommitmentsAndContingenciesPolicyTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_CommitmentsAndContingenciesPolicyTextBlock' use='optional' order='3.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock' xlink:label='us-gaap_RevenueFromContractWithCustomerPolicyTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_RevenueFromContractWithCustomerPolicyTextBlock' use='optional' order='4.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxPolicyTextBlock' xlink:label='us-gaap_IncomeTaxPolicyTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_IncomeTaxPolicyTextBlock' use='optional' order='5.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryPolicyTextBlock' xlink:label='us-gaap_InventoryPolicyTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_InventoryPolicyTextBlock' use='optional' order='6.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingPolicyPolicyTextBlock' xlink:label='us-gaap_SegmentReportingPolicyPolicyTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_SegmentReportingPolicyPolicyTextBlock' use='optional' order='7.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueTables" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureRevenueDisaggregationOfRevenueTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='us-gaap_StatementTable' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis' xlink:label='srt_ProductOrServiceAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='srt_ProductOrServiceAxis' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain' xlink:label='srt_ProductsAndServicesDomain'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_ProductOrServiceAxis' xlink:to='srt_ProductsAndServicesDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_EndMarketMember' xlink:label='fil_EndMarketMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_ProductOrServiceAxis' xlink:to='fil_EndMarketMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis' xlink:label='srt_StatementGeographicalAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='srt_StatementGeographicalAxis' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain' xlink:label='srt_SegmentGeographicalDomain'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_StatementGeographicalAxis' xlink:to='srt_SegmentGeographicalDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_LocationMember' xlink:label='fil_LocationMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_StatementGeographicalAxis' xlink:to='fil_LocationMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementLineItems' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock' xlink:label='us-gaap_DisaggregationOfRevenueTableTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_DisaggregationOfRevenueTableTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesTables" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureInventoriesInventoriesTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock' xlink:label='us-gaap_ScheduleOfInventoryCurrentTableTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='us-gaap_ScheduleOfInventoryCurrentTableTextBlock' use='optional' order='1.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentTables" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock' xlink:label='us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureRevenueDisaggregationOfRevenueDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_StatementTable' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis' xlink:label='us-gaap_StatementBusinessSegmentsAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementBusinessSegmentsAxis' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain' xlink:label='us-gaap_SegmentDomain'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementBusinessSegmentsAxis' xlink:to='us-gaap_SegmentDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_FastenerMember' xlink:label='fil_FastenerMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementBusinessSegmentsAxis' xlink:to='fil_FastenerMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_AssemblyEquipmentMember' xlink:label='fil_AssemblyEquipmentMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementBusinessSegmentsAxis' xlink:to='fil_AssemblyEquipmentMember' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis' xlink:label='srt_ProductOrServiceAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='srt_ProductOrServiceAxis' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain' xlink:label='srt_ProductsAndServicesDomain'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_ProductOrServiceAxis' xlink:to='srt_ProductsAndServicesDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_AutomotiveMember' xlink:label='fil_AutomotiveMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_ProductOrServiceAxis' xlink:to='fil_AutomotiveMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_NonautomotiveMember' xlink:label='fil_NonautomotiveMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_ProductOrServiceAxis' xlink:to='fil_NonautomotiveMember' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis' xlink:label='srt_StatementGeographicalAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='srt_StatementGeographicalAxis' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain' xlink:label='srt_SegmentGeographicalDomain'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_StatementGeographicalAxis' xlink:to='srt_SegmentGeographicalDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/country/2023/country-2023.xsd#country_US' xlink:label='country_US'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_StatementGeographicalAxis' xlink:to='country_US' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonUsMember' xlink:label='us-gaap_NonUsMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_StatementGeographicalAxis' xlink:to='us-gaap_NonUsMember' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementLineItems' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' xlink:label='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' use='optional' order='1.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesDetails" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureInventoriesInventoriesDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterials' xlink:label='us-gaap_InventoryRawMaterials'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_InventoryRawMaterials' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryWorkInProcess' xlink:label='us-gaap_InventoryWorkInProcess'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_InventoryWorkInProcess' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryFinishedGoods' xlink:label='us-gaap_InventoryFinishedGoods'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_InventoryFinishedGoods' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryGross' xlink:label='us-gaap_InventoryGross'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_InventoryGross' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryValuationReserves' xlink:label='us-gaap_InventoryValuationReserves'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_InventoryValuationReserves' use='optional' order='5.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet' xlink:label='us-gaap_InventoryNet'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_InventoryNet' use='optional' order='6.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails" xlink:type="simple" xlink:href="cvr-20240331.xsd#idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_StatementTable' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis' xlink:label='us-gaap_StatementBusinessSegmentsAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementBusinessSegmentsAxis' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain' xlink:label='us-gaap_SegmentDomain'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementBusinessSegmentsAxis' xlink:to='us-gaap_SegmentDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_FastenerMember' xlink:label='fil_FastenerMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementBusinessSegmentsAxis' xlink:to='fil_FastenerMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_AssemblyEquipmentMember' xlink:label='fil_AssemblyEquipmentMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementBusinessSegmentsAxis' xlink:to='fil_AssemblyEquipmentMember' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateMember' xlink:label='us-gaap_CorporateMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementBusinessSegmentsAxis' xlink:to='us-gaap_CorporateMember' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementLineItems' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Revenues' xlink:label='us-gaap_Revenues'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_Revenues' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Depreciation' xlink:label='us-gaap_Depreciation'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_Depreciation' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_SegmentOperatingprofit' xlink:label='fil_SegmentOperatingprofit'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_SegmentOperatingprofit' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='cvr-20240331.xsd#fil_SellingAndAdministrativeExpensesUnallocatedCorporate' xlink:label='fil_SellingAndAdministrativeExpensesUnallocatedCorporate'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_SellingAndAdministrativeExpensesUnallocatedCorporate' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestAndOtherIncome' xlink:label='us-gaap_InterestAndOtherIncome'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_InterestAndOtherIncome' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment' xlink:label='us-gaap_PaymentsToAcquirePropertyPlantAndEquipment'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_PaymentsToAcquirePropertyPlantAndEquipment' use='optional' order='6.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent' xlink:label='us-gaap_AccountsReceivableNetCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_AccountsReceivableNetCurrent' use='optional' order='7.0' preferredLabel='http://www.xbrl.org/2003/role/verboseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet' xlink:label='us-gaap_InventoryNet'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_InventoryNet' use='optional' order='8.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet' xlink:label='us-gaap_PropertyPlantAndEquipmentNet'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_PropertyPlantAndEquipmentNet' use='optional' order='9.0' preferredLabel='http://www.xbrl.org/2003/role/verboseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssets' xlink:label='us-gaap_OtherAssets'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_OtherAssets' use='optional' order='10.0'/>
	</link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<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.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213451633376">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Document and Entity Information - shares<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>May 08, 2024</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_us-gaap_TextBlockAbstract', window );"><strong>Details</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Registrant CIK</a></td>
<td class="text">0000019871<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CurrentFiscalYearEndDate', window );">Fiscal Year End</a></td>
<td class="text">--12-31<span></span>
</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">10-Q<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Mar. 31,  2024<span></span>
</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_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">000-01227<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">CHICAGO RIVET & MACHINE CO<span></span>
</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_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">IL<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">36-0904920<span></span>
</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_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">901 Frontenac Road<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Naperville<span></span>
</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_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">IL<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">60563<span></span>
</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_CityAreaCode', window );">City Area Code</a></td>
<td class="text">630<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">357-8500<span></span>
</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_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock, par value $1.00 per share<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">CVR<span></span>
</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_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NYSEAMER<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</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_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Non-accelerated Filer<span></span>
</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_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</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_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">966,132<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2024<span></span>
</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_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">Q1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentQuarterlyReport', window );">Document Quarterly Report</a></td>
<td class="text">true<span></span>
</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_DocumentTransitionReport', window );">Document Transition Report</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<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_CurrentFiscalYearEndDate">
<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>End date of current fiscal year in the format --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_CurrentFiscalYearEndDate</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:gMonthDayItemType</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_DocumentFiscalPeriodFocus">
<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>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.</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_DocumentFiscalPeriodFocus</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:fiscalPeriodItemType</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_DocumentFiscalYearFocus">
<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>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.</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_DocumentFiscalYearFocus</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:gYearItemType</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_DocumentQuarterlyReport">
<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 only for a form used as an quarterly report.</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 Form 10-Q<br> -Number 240<br> -Section 308<br> -Subsection a<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_DocumentQuarterlyReport</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_DocumentTransitionReport">
<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 only for a form used as a transition report.</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 Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-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_DocumentTransitionReport</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_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_EntityCommonStockSharesOutstanding">
<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 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.</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_EntityCommonStockSharesOutstanding</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:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCurrentReportingStatus">
<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 '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.</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_EntityCurrentReportingStatus</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:yesNoItemType</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_EntityFilerCategory">
<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 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.</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_EntityFilerCategory</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:filerCategoryItemType</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_EntityInteractiveDataCurrent">
<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 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).</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 Regulation S-T<br> -Number 232<br> -Section 405<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_EntityInteractiveDataCurrent</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:yesNoItemType</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_EntityShellCompany">
<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 registrant is a shell company as defined in Rule 12b-2 of 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 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_EntityShellCompany</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_EntitySmallBusiness">
<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>Indicates that the company is a Smaller Reporting Company (SRC).</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_EntitySmallBusiness</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_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_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_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_us-gaap_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213456926320">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets (Unaudited) - USD ($)<br></strong></div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</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_us-gaap_AssetsCurrentAbstract', window );"><strong>Current Assets</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 1,291,132<span></span>
</td>
<td class="nump">$ 1,387,075<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_us-gaap_ShortTermInvestments', window );">Short-term investments</a></td>
<td class="nump">1,374,956<span></span>
</td>
<td class="nump">1,771,120<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_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable - Less allowances of $160,000</a></td>
<td class="nump">5,463,717<span></span>
</td>
<td class="nump">4,275,882<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_us-gaap_ContractWithCustomerAssetNetCurrent', window );">Contract assets</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">118,301<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_us-gaap_InventoryNet', window );">Inventories, net</a></td>
<td class="nump">6,746,675<span></span>
</td>
<td class="nump">7,327,653<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_us-gaap_PrepaidTaxes', window );">Income taxes receivable</a></td>
<td class="nump">534,224<span></span>
</td>
<td class="nump">580,287<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_us-gaap_OtherAssetsCurrent', window );">Other current assets</a></td>
<td class="nump">504,958<span></span>
</td>
<td class="nump">380,562<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">15,915,662<span></span>
</td>
<td class="nump">15,840,880<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_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LandAndLandImprovements', window );">Land and improvements</a></td>
<td class="nump">1,510,513<span></span>
</td>
<td class="nump">1,510,513<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_us-gaap_BuildingsAndImprovementsGross', window );">Buildings and improvements</a></td>
<td class="nump">6,835,619<span></span>
</td>
<td class="nump">6,835,619<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_us-gaap_MachineryAndEquipmentGross', window );">Production equipment and other</a></td>
<td class="nump">37,724,746<span></span>
</td>
<td class="nump">37,952,902<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, Plant and Equipment, Gross</a></td>
<td class="nump">46,070,878<span></span>
</td>
<td class="nump">46,299,034<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_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Less accumulated depreciation</a></td>
<td class="nump">34,695,580<span></span>
</td>
<td class="nump">34,633,952<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Net property, plant and equipment</a></td>
<td class="nump">11,375,298<span></span>
</td>
<td class="nump">11,665,082<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_us-gaap_DeferredIncomeTaxAssetsNet', window );">Deferred income taxes, net</a></td>
<td class="nump">501,773<span></span>
</td>
<td class="nump">324,943<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">27,792,733<span></span>
</td>
<td class="nump">27,830,905<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_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current Liabilities</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">1,388,599<span></span>
</td>
<td class="nump">788,974<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_us-gaap_EmployeeRelatedLiabilitiesCurrent', window );">Accrued wages and salaries</a></td>
<td class="nump">634,373<span></span>
</td>
<td class="nump">514,900<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_us-gaap_AccruedLiabilitiesCurrent', window );">Other accrued expenses</a></td>
<td class="nump">313,112<span></span>
</td>
<td class="nump">129,963<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_us-gaap_CustomerAdvancesAndDepositsCurrent', window );">Unearned revenue and customer deposits</a></td>
<td class="nump">284,377<span></span>
</td>
<td class="nump">430,179<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">2,620,461<span></span>
</td>
<td class="nump">1,864,016<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total liabilities</a></td>
<td class="nump">2,620,461<span></span>
</td>
<td class="nump">1,864,016<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_us-gaap_StockholdersEquityAbstract', window );"><strong>Shareholders' Equity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockValue', window );">Preferred stock, no par value, 500,000 shares authorized: none outstanding</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_us-gaap_CommonStockValueOutstanding', window );">Common stock, $1.00 par value, 4,000,000 shares authorized, 1,138,096 shares issued; 966,132 shares outstanding</a></td>
<td class="nump">1,138,096<span></span>
</td>
<td class="nump">1,138,096<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_us-gaap_AdditionalPaidInCapital', window );">Additional paid-in capital</a></td>
<td class="nump">447,134<span></span>
</td>
<td class="nump">447,134<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_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">27,509,140<span></span>
</td>
<td class="nump">28,303,757<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_us-gaap_TreasuryStockValue', window );">Treasury stock, 171,964 shares at cost</a></td>
<td class="num">(3,922,098)<span></span>
</td>
<td class="num">(3,922,098)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total shareholders' equity</a></td>
<td class="nump">25,172,272<span></span>
</td>
<td class="nump">25,966,889<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total liabilities and shareholders' equity</a></td>
<td class="nump">$ 27,792,733<span></span>
</td>
<td class="nump">$ 27,830,905<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrent">
<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>Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</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/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_AccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<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>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</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/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481990/310-10-45-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481990/310-10-45-9<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;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrent">
<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>Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">
<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>Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.</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/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-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;">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdditionalPaidInCapital">
<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>Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock.</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/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_AdditionalPaidInCapital</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<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>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</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/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 26: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-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;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<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>Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</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/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<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;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_BuildingsAndImprovementsGross">
<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>Amount before accumulated depreciation of building structures held for productive use including addition, improvement, or renovation to the structure, including, but not limited to, interior masonry, interior flooring, electrical, and plumbing.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-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;">us-gaap_BuildingsAndImprovementsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<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>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</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/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-4<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;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValueOutstanding">
<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>Value of all classes of common stock held by shareholders. May be all or portion of the number of common shares authorized. These shares exclude common shares repurchased by the entity and held as treasury shares.</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/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_CommonStockValueOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetNetCurrent">
<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>Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current.</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/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-8<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;">us-gaap_ContractWithCustomerAssetNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CustomerAdvancesAndDepositsCurrent">
<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 current portion of aggregate prepayments received from customers for goods or services to be provided in the future, as well as the current portion of money or property received from customers that are to be returned upon satisfactory contract completion or as partial prepayment for goods or services to be provided in the future.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_CustomerAdvancesAndDepositsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxAssetsNet">
<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>Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.</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/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482525/740-10-45-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482525/740-10-45-6<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;">us-gaap_DeferredIncomeTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeRelatedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_EmployeeRelatedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<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>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</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/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LandAndLandImprovements">
<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>Amount before accumulated depreciation and depletion of real estate held for productive use and additions or improvements to real estate held for productive use, examples include, but are not limited to, walkways, driveways, fences, and parking lots. Excludes land held for sale.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_LandAndLandImprovements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Liabilities">
<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>Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.</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/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 21: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 22: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19-26)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<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>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</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/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</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/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-5<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 21: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.21)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_LiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_MachineryAndEquipmentGross">
<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>Amount before accumulated depreciation of tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-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;">us-gaap_MachineryAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAssetsCurrent">
<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>Amount of current assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_OtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockValue">
<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>Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.</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/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_PreferredStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PrepaidTaxes">
<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>Amount of asset related to consideration paid in advance for income and other taxes that provide economic benefits within a future period of one year or the normal operating cycle, if longer.</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/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 340<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483032/340-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 340<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 05<br> -Paragraph 5<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482955/340-10-05-5<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;">us-gaap_PrepaidTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_PropertyPlantAndEquipmentGross">
<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>Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</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/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-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;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<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>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 360<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480842/942-360-50-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;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<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>Amount of accumulated undistributed earnings (deficit).</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/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-11<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShortTermInvestments">
<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>Amount of investments including trading securities, available-for-sale securities, held-to-maturity securities, and short-term investments classified as other and current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-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;">us-gaap_ShortTermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<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>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</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/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480418/310-10-S99-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;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_TreasuryStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481520/505-30-50-4<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481549/505-30-45-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29,30)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_TreasuryStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213451549296">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets (Unaudited) - Parenthetical - $ / shares<br></strong></div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</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_us-gaap_StatementOfFinancialPositionAbstract', window );"><strong>Condensed Consolidated Balance Sheets (Unaudited)</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_PreferredStockParOrStatedValuePerShare', window );">Preferred Stock, Par or Stated Value Per Share</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<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_us-gaap_PreferredStockSharesAuthorized', window );">Preferred Stock, Shares Authorized</a></td>
<td class="nump">500,000<span></span>
</td>
<td class="nump">500,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesOutstanding', window );">Preferred Stock, Shares Outstanding</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common Stock, Par or Stated Value Per Share</a></td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">$ 1<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_us-gaap_CommonStockSharesAuthorized', window );">Common Stock, Shares Authorized</a></td>
<td class="nump">4,000,000<span></span>
</td>
<td class="nump">4,000,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common Stock, Shares, Issued</a></td>
<td class="nump">1,138,096<span></span>
</td>
<td class="nump">1,138,096<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_us-gaap_CommonStockSharesOutstanding', window );">Common Stock, Shares, Outstanding</a></td>
<td class="nump">966,132<span></span>
</td>
<td class="nump">966,132<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<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>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum number of common shares permitted to be issued by an entity's charter and bylaws.</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/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesOutstanding">
<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>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockParOrStatedValuePerShare">
<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>Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.</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/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-13<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_PreferredStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.</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/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_PreferredStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesOutstanding">
<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>Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.</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/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_PreferredStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfFinancialPositionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfFinancialPositionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<FILENAME>R4.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.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213451573392">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Operations (Unaudited) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Mar. 31, 2023</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_us-gaap_IncomeStatementAbstract', window );"><strong>Condensed Consolidated Statements of Operations (Unaudited)</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_Revenues', window );">Net sales</a></td>
<td class="nump">$ 7,853,181<span></span>
</td>
<td class="nump">$ 8,729,725<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_us-gaap_CostOfRevenue', window );">Cost of goods sold</a></td>
<td class="nump">7,108,619<span></span>
</td>
<td class="nump">8,252,222<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">744,562<span></span>
</td>
<td class="nump">477,503<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_us-gaap_OperatingExpenses', window );">Selling and administrative expenses</a></td>
<td class="nump">1,647,865<span></span>
</td>
<td class="nump">1,257,695<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating loss</a></td>
<td class="num">(903,303)<span></span>
</td>
<td class="num">(780,192)<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_us-gaap_OtherNonoperatingIncomeExpense', window );">Other income</a></td>
<td class="nump">28,469<span></span>
</td>
<td class="nump">43,055<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic', window );">Loss before income taxes</a></td>
<td class="num">(874,834)<span></span>
</td>
<td class="num">(737,137)<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_us-gaap_IncomeTaxExpenseBenefit', window );">Benefit for income taxes</a></td>
<td class="num">(176,830)<span></span>
</td>
<td class="num">(154,000)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">$ (698,004)<span></span>
</td>
<td class="num">$ (583,137)<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_us-gaap_EarningsPerShareAbstract', window );"><strong>Per share data</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare', window );">Basic net loss per share</a></td>
<td class="num">$ (0.72)<span></span>
</td>
<td class="num">$ (0.6)<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_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare', window );">Diluted net loss per share</a></td>
<td class="num">$ (0.72)<span></span>
</td>
<td class="num">$ (0.6)<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_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic</a></td>
<td class="nump">966,132<span></span>
</td>
<td class="nump">966,132<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_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted</a></td>
<td class="nump">966,132<span></span>
</td>
<td class="nump">966,132<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_us-gaap_CommonStockDividendsPerShareDeclared', window );">Cash dividends declared per share</a></td>
<td class="nump">$ 0.1<span></span>
</td>
<td class="nump">$ 0.22<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockDividendsPerShareDeclared">
<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>Aggregate dividends declared during the period for each share of common stock outstanding.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-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;">us-gaap_CommonStockDividendsPerShareDeclared</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</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_us-gaap_CostOfRevenue">
<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 aggregate cost of goods produced and sold and services rendered during the reporting period.</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/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-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;">us-gaap_CostOfRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_GrossProfit">
<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>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</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/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 19: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-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;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic">
<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 portion of earnings or loss from continuing operations before income taxes that is attributable to domestic operations.</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/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-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;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) from continuing operations per each share of common stock or unit outstanding during the reporting period.</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/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-7<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-03(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-1<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 15: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-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;">us-gaap_IncomeLossFromContinuingOperationsPerBasicShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</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_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) derived from continuing operations during the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</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/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-7<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-03(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-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;">us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</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_us-gaap_IncomeStatementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_IncomeTaxExpenseBenefit">
<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>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</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/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-10<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482659/740-20-45-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-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;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_NetIncomeLoss">
<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 portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</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/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-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;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_OperatingExpenses">
<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>Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.</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;">us-gaap_OperatingExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_OperatingIncomeLoss">
<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 net result for the period of deducting operating expenses from operating revenues.</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/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<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;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_OtherNonoperatingIncomeExpense">
<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>Amount of income (expense) related to nonoperating activities, classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.9)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-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;">us-gaap_OtherNonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_Revenues">
<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>Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).</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/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479557/942-235-S99-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;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<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 average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</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/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-16<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;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</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_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<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>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</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/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-10<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;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<FILENAME>R5.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.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213453438960">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Shareholders' Equity (Unaudited) - USD ($)<br></strong></div></th>
<th class="th"><div>Total</div></th>
<th class="th"><div>Preferred Stock</div></th>
<th class="th"><div>Common Stock</div></th>
<th class="th"><div>Additional Paid-in Capital</div></th>
<th class="th"><div>Retained Earnings</div></th>
<th class="th"><div>Treasury Stock, Common</div></th>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning Balance at Dec. 31, 2022</a></td>
<td class="nump">$ 30,986,798<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 1,138,096<span></span>
</td>
<td class="nump">$ 447,134<span></span>
</td>
<td class="nump">$ 33,323,666<span></span>
</td>
<td class="num">$ (3,922,098)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common Stock Shares at Dec. 31, 2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">966,132<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Treasury Stock Shares at Dec. 31, 2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">171,964<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_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">(583,137)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(583,137)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Dividends', window );">Dividends declared</a></td>
<td class="num">(212,549)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(212,549)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending Balance at Mar. 31, 2023</a></td>
<td class="nump">30,191,112<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 1,138,096<span></span>
</td>
<td class="nump">447,134<span></span>
</td>
<td class="nump">32,527,980<span></span>
</td>
<td class="num">$ (3,922,098)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common Stock Shares at Mar. 31, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">966,132<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Treasury Stock Shares at Mar. 31, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">171,964<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning Balance at Dec. 31, 2023</a></td>
<td class="nump">$ 25,966,889<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 1,138,096<span></span>
</td>
<td class="nump">447,134<span></span>
</td>
<td class="nump">28,303,757<span></span>
</td>
<td class="num">$ (3,922,098)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common Stock Shares at Dec. 31, 2023</a></td>
<td class="nump">966,132<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">966,132<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Treasury Stock Shares at Dec. 31, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">171,964<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_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">$ (698,004)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(698,004)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Dividends', window );">Dividends declared</a></td>
<td class="num">(96,613)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(96,613)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending Balance at Mar. 31, 2024</a></td>
<td class="nump">$ 25,172,272<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 1,138,096<span></span>
</td>
<td class="nump">$ 447,134<span></span>
</td>
<td class="nump">$ 27,509,140<span></span>
</td>
<td class="num">$ (3,922,098)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common Stock Shares at Mar. 31, 2024</a></td>
<td class="nump">966,132<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">966,132<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Treasury Stock Shares at Mar. 31, 2024</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">171,964<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesOutstanding">
<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>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Dividends">
<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>Amount of paid and unpaid cash, stock, and paid-in-kind (PIK) dividends declared, for example, but not limited to, common and preferred stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -SubTopic 405<br> -Topic 942<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481071/942-405-45-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;">us-gaap_Dividends</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_NetIncomeLoss">
<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 portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</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/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-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;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_StockholdersEquity">
<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>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</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/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480418/310-10-S99-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;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockCommonShares">
<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>Number of previously issued common shares repurchased by the issuing entity and held in treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481549/505-30-45-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;">us-gaap_TreasuryStockCommonShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<FILENAME>R6.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.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213551729472">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Shareholders' Equity (Unaudited) - Parenthetical - $ / shares<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Mar. 31, 2023</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_us-gaap_StatementOfStockholdersEquityAbstract', window );"><strong>Condensed Consolidated Statements of Shareholders' Equity (Unaudited)</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_CommonStockDividendsPerShareDeclared', window );">Cash dividends declared per share</a></td>
<td class="nump">$ 0.1<span></span>
</td>
<td class="nump">$ 0.22<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockDividendsPerShareDeclared">
<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>Aggregate dividends declared during the period for each share of common stock outstanding.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-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;">us-gaap_CommonStockDividendsPerShareDeclared</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</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_us-gaap_StatementOfStockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfStockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<FILENAME>R7.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.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213452730048">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Cash Flows (Unaudited) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Mar. 31, 2023</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_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Cash flows from operating activities</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">$ (698,004)<span></span>
</td>
<td class="num">$ (583,137)<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_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net loss to net cash used in operating activities</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_Depreciation', window );">Depreciation</a></td>
<td class="nump">323,405<span></span>
</td>
<td class="nump">306,032<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_us-gaap_GainLossOnDispositionOfAssets', window );">Gain on disposal of equipment</a></td>
<td class="num">(36,886)<span></span>
</td>
<td class="nump">0<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_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred income taxes</a></td>
<td class="num">(176,830)<span></span>
</td>
<td class="num">(43,000)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in operating assets and liabilities</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable</a></td>
<td class="num">(1,187,835)<span></span>
</td>
<td class="num">(1,197,937)<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_us-gaap_IncreaseDecreaseInContractWithCustomerAsset', window );">Contract assets</a></td>
<td class="nump">118,301<span></span>
</td>
<td class="nump">0<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_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="nump">580,978<span></span>
</td>
<td class="num">(877,722)<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_us-gaap_IncreaseDecreaseInOtherOperatingAssets', window );">Other current assets</a></td>
<td class="num">(78,333)<span></span>
</td>
<td class="num">(160,452)<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_us-gaap_IncreaseDecreaseInAccountsPayable', window );">Accounts payable</a></td>
<td class="nump">599,625<span></span>
</td>
<td class="nump">924,168<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_us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities', window );">Accrued wages and salaries</a></td>
<td class="nump">119,473<span></span>
</td>
<td class="nump">212,746<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_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities', window );">Other accrued expenses</a></td>
<td class="nump">183,149<span></span>
</td>
<td class="num">(212,227)<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_us-gaap_IncreaseDecreaseInCustomerAdvancesAndDeposits', window );">Unearned revenue and customer deposits</a></td>
<td class="num">(145,802)<span></span>
</td>
<td class="num">(19,881)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net cash used in operating activities</a></td>
<td class="num">(398,759)<span></span>
</td>
<td class="num">(1,651,410)<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_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Cash flows from investing activities</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_PaymentsToAcquireProductiveAssets', window );">Capital expenditures</a></td>
<td class="num">(93,085)<span></span>
</td>
<td class="num">(413,419)<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_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment', window );">Proceeds from the sale of equipment</a></td>
<td class="nump">96,350<span></span>
</td>
<td class="nump">0<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_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities', window );">Proceeds from short-term investments</a></td>
<td class="nump">1,133,641<span></span>
</td>
<td class="nump">498,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireHeldToMaturitySecurities', window );">Purchases of short-term investments</a></td>
<td class="num">(737,477)<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash provided by investing activities</a></td>
<td class="nump">399,429<span></span>
</td>
<td class="nump">84,581<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_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Cash flows from financing activities</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_PaymentsOfDividendsCommonStock', window );">Cash dividends paid</a></td>
<td class="num">(96,613)<span></span>
</td>
<td class="num">(212,549)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash used in financing activities</a></td>
<td class="num">(96,613)<span></span>
</td>
<td class="num">(212,549)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect', window );">Net decrease in cash and cash equivalents</a></td>
<td class="num">(95,943)<span></span>
</td>
<td class="num">(1,779,378)<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_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents at beginning of period</a></td>
<td class="nump">1,387,075<span></span>
</td>
<td class="nump">4,045,101<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_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents at end of period</a></td>
<td class="nump">$ 1,291,132<span></span>
</td>
<td class="nump">$ 2,265,723<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<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>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</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/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-4<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;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect">
<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>Amount of increase (decrease) in cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; excluding effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -SubTopic 230<br> -Topic 830<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481877/830-230-45-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;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_DeferredIncomeTaxExpenseBenefit">
<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>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-9<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;">us-gaap_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_Depreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-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;">us-gaap_Depreciation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_GainLossOnDispositionOfAssets">
<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>Amount of gain (loss) on sale or disposal of property, plant and equipment assets, excluding oil and gas property and timber property.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482130/360-10-45-5<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-3<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;">us-gaap_GainLossOnDispositionOfAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_IncreaseDecreaseInAccountsPayable">
<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 increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<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;">us-gaap_IncreaseDecreaseInAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_IncreaseDecreaseInAccountsReceivable">
<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 increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<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;">us-gaap_IncreaseDecreaseInAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_IncreaseDecreaseInContractWithCustomerAsset">
<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>Amount of increase (decrease) in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<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;">us-gaap_IncreaseDecreaseInContractWithCustomerAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_IncreaseDecreaseInCustomerAdvancesAndDeposits">
<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 increase (decrease) during the reporting period in the amount of (a) prepayments by customers for goods or services to be provided at a later date, (b) the amount of customer money held in customer accounts, including security deposits, collateral for a current or future transactions, initial payment of the cost of acquisition or for the right to enter into a contract or agreement, or (c) a combination of (a) and (b).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<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;">us-gaap_IncreaseDecreaseInCustomerAdvancesAndDeposits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities">
<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 increase (decrease) during the reporting period in the aggregate amount of obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<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;">us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_IncreaseDecreaseInInventories">
<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 increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<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;">us-gaap_IncreaseDecreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingCapitalAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities">
<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 increase (decrease) during the reporting period in other expenses incurred but not yet paid.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<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;">us-gaap_IncreaseDecreaseInOtherAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_IncreaseDecreaseInOtherOperatingAssets">
<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>Amount of increase (decrease) in operating assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<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;">us-gaap_IncreaseDecreaseInOtherOperatingAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_NetCashProvidedByUsedInFinancingActivities">
<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>Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.</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/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<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;">us-gaap_NetCashProvidedByUsedInFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_NetCashProvidedByUsedInInvestingActivities">
<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>Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.</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/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<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;">us-gaap_NetCashProvidedByUsedInInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_NetCashProvidedByUsedInOperatingActivities">
<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>Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-25<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;">us-gaap_NetCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_NetIncomeLoss">
<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 portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</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/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-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;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_PaymentsOfDividendsCommonStock">
<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>Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-15<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;">us-gaap_PaymentsOfDividendsCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_PaymentsToAcquireHeldToMaturitySecurities">
<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>Amount of cash outflow through purchase of long-term held-to-maturity securities.</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/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481830/320-10-45-11<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-13<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;">us-gaap_PaymentsToAcquireHeldToMaturitySecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_PaymentsToAcquireProductiveAssets">
<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 cash outflow for purchases of and capital improvements on property, plant and equipment (capital expenditures), software, and other intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 50<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480060/805-50-25-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 50<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480027/805-50-30-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 50<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480027/805-50-30-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-13<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;">us-gaap_PaymentsToAcquireProductiveAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities">
<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 cash inflow associated with the maturity, prepayments and calls (requests for early payments) of debt securities designated as held-to-maturity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481830/320-10-45-11<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-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;">us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment">
<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 cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-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;">us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>19
<FILENAME>R8.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.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213545146736">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounting Policies<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</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_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes</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_us-gaap_SignificantAccountingPoliciesTextBlock', window );">Accounting Policies</a></td>
<td class="text"><p style="font:10pt Arial;margin:0">1. &#160;In the opinion of the Company, the accompanying unaudited interim financial statements contain all adjustments necessary to present fairly the financial position of the Company as of March 31, 2024 (unaudited) and December 31, 2023 (audited) and the results of operations and changes in cash flows for the indicated periods. &#160;Certain information and note disclosures normally included in financial statements prepared in accordance with accounting principles generally accepted in the United States of America have been omitted from these unaudited financial statements in accordance with applicable rules. Please refer to the financial statements and notes thereto included in the Company&#8217;s Annual Report on Form 10-K for the year ended December 31, 2023.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">The preparation of financial statements in conformity with generally accepted accounting principles requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting period. &#160;Actual results could differ from those estimates. &#160;The results of operations for the three month period ended March 31, 2024 are not necessarily indicative of the results to be expected for the year.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">In November 2023, the FASB issued ASU No. 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures, which requires a public entity to disclose its significant segment expense categories and amounts for each reportable segment. &#160;The new guidance is effective for fiscal years beginning after December 15, 2023, and interim periods in fiscal years beginning after December 15, 2024. &#160;The Company is evaluating the impact of this ASU. &#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">In December 2023, the FASB issued ASU No. 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures, to enhance the transparency and decision usefulness of income tax disclosures providing investors with information to better assess how an entity&#8217;s operations and related tax risks and tax planning and operational opportunities affect its tax rate and prospects for future cash flows. The new guidance is effective for annual periods beginning after December 31, 2024. &#160;The Company is evaluating the impact that it will have on our consolidated financial statements and disclosures.</p> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_SignificantAccountingPoliciesTextBlock">
<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 entire disclosure for all significant accounting policies of the reporting entity.</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/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483426/235-10-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 235<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//235/tableOfContent<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;">us-gaap_SignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<FILENAME>R9.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.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213545320496">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Risks and Uncertainties<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</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_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes</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_us-gaap_ConcentrationRiskDisclosureTextBlock', window );">Risks and Uncertainties</a></td>
<td class="text"><p style="font:10pt Arial;margin:0">2. &#160;The Company extends credit on the basis of terms that are customary within our markets to various companies doing business primarily in the automotive industry. &#160;The Company has a concentration of credit risk primarily within the automotive industry and in the Midwestern United States. &#160;The Company has established an allowance for accounts that may become uncollectible in the future. &#160;This estimated allowance is based primarily on management's evaluation of the financial condition of the customer and historical experience. &#160;The Company monitors its accounts receivable and charges to expense an amount equal to its estimate of potential credit losses. &#160;The Company considers a number of factors in determining its estimates, including the length of time its trade accounts receivable are past due, the Company's previous loss history and the customer's current ability to pay its obligation. &#160;The Company also considers current economic conditions, the economic outlook and industry-specific factors in its evaluation. &#160;Accounts receivable balances are charged off against the allowance when it is determined that the receivable will not be recovered.</p> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskDisclosureTextBlock">
<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 entire disclosure for any concentrations existing at the date of the financial statements that make an entity vulnerable to a reasonably possible, near-term, severe impact. This disclosure informs financial statement users about the general nature of the risk associated with the concentration, and may indicate the percentage of concentration risk as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 275<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//275/tableOfContent<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;">us-gaap_ConcentrationRiskDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<FILENAME>R10.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.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213457943792">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</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_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes</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_us-gaap_LegalMattersAndContingenciesTextBlock', window );">Commitments and Contingencies</a></td>
<td class="text"><p style="font:10pt Arial;margin:0">3. &#160;The Company is, from time to time, involved in litigation, including environmental claims and contract disputes, in the normal course of business. &#160;While it is not possible at this time to establish the ultimate amount of liability with respect to contingent liabilities, including those related to legal proceedings, management is of the opinion that the aggregate amount of any such liabilities, for which provision has not been made, will not have a material adverse effect on the Company's financial position, liquidity, results of operations or cash flows. </p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">The Company recognizes a provision if it is probable that an outflow of cash or other economic resources that can be reliably measured will be required to settle the provision. In determining the likelihood and timing of potential cash outflows, management needs to make estimates, the assessment of which is based in part on internal and external financial and legal guidance and other related factors. For contingencies, the Company is required to exercise significant judgement to determine whether the risk of loss is possible but not probable. Contingencies involve inherent uncertainties including, but not limited to, negotiations between affected parties, among other factors, and the amount of actual loss may be significantly more or less that what was provided for with respect to such contingencies. </p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0;color:#000000">The Company was recently notified by one of its customers that certain fasteners manufactured by the Company&#8217;s wholly-owned subsidiary, H&amp;L Tool Company Inc., may not conform to customer specifications. &#160;These fasteners become part of an assembly that is ultimately used in the braking system of certain vehicles. &#160;Based on information provided to the Company by the customer and the Company&#8217;s internal review, which is ongoing, we understand that it was necessary for the customer to identify and sort the non-conforming parts in its inventory and take certain other related actions as a result of the alleged non-conforming parts. The customer has also indicated that its end customer has incurred costs relating to the alleged defective part, including costs to repair certain of the vehicles that included these non-conforming fasteners. &#160;Based on discussions with our customer as to the scope of the actions taken by the customer to date and the Company&#8217;s own internal analysis to date, we determined an estimate of $243,000 as a contingent liability in our financial statements during the three months ended March 31, 2024, in anticipation of potential reimbursement of certain expenses that the customer may have incurred as a result of the non-conforming parts. Our discussions with the customer and our internal review process are ongoing, and the ultimate amount of such liability, if any, may be more or less than the amount reflected in the financial statements for the first quarter of 2024.</p> <p style="font:10pt Arial;margin:0;color:#000000">&#160;</p> <p style="font:10pt Arial;margin:0;color:#000000">The Company may also incur additional potentially significant costs related to this issue, which could materially and adversely affect our results of operations and financial condition. &#160;At this time, the Company is continuing its investigation and cannot quantify potential additional financial liability, if any, due to the ultimate costs that may or may not be incurred by the parties involved in this matter, and the allocation of those costs among the parties involved. It is not possible at this time to establish the ultimate amount of any such contingent liabilities, including those related to any legal proceedings that may result related to this matter. Accordingly, no additional amount has been accrued in our financial statements at March 31, 2024.</p> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_LegalMattersAndContingenciesTextBlock">
<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 entire disclosure for legal proceedings, legal contingencies, litigation, regulatory and environmental matters and other contingencies.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 450<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//450/tableOfContent<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;">us-gaap_LegalMattersAndContingenciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>22
<FILENAME>R11.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.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213459140816">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</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_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes</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_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">Revenue</a></td>
<td class="text"><p style="font:10pt Arial;margin:0">4. &#160;Revenue&#8212;The Company operates in the fastener industry and is in the business of producing and selling rivets, cold-formed fasteners and parts, screw machine products, automatic rivet setting machines and parts and tools for such machines. &#160;Revenue is recognized when control of the promised goods or services is transferred to our customers, generally upon shipment of goods or completion of services, in an amount that reflects the consideration we expect to receive in exchange for those goods or services. &#160;For certain assembly equipment segment transactions, revenue is recognized based on progress toward completion of the performance obligation using a labor-based measure. &#160;Labor incurred and specific material costs are compared to milestone payments per sales contract. &#160;Based on our experience, this method most accurately reflects the transfer of goods under such contracts. &#160;During the first quarter of 2024, the Company realized revenue of $106,500 related to such contracts and has a remaining performance obligation of $16,600 which is expected to be recognized in the next three months.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">Sales taxes we may collect concurrent with revenue producing activities are excluded from revenue. &#160;Revenue is recognized net of certain sales adjustments to arrive at net sales as reported on the statement of operations. &#160;These adjustments primarily relate to customer returns and allowances, which vary over time. &#160;The Company records a liability and reduction in sales for estimated product returns based upon historical experience. &#160;If we determine that our obligation under warranty claims is probable and subject to reasonable determination, an estimate of that liability is recorded as an offset against revenue at that time. &#160;As of March 31, 2024 and December 31, 2023 reserves for warranty claims were not material. &#160;Cash received by the Company prior to transfer of control is recorded as unearned revenue.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">Shipping and handling fees billed to customers are recognized in net sales, and related costs as cost of sales, when incurred.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">Sales commissions are expensed when incurred because the amortization period is less than one year. &#160;These costs are recorded within selling and administrative expenses in the statement of operations.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">The following table presents revenue by segment, further disaggregated by end-market:</p> <p style="font:10pt Courier New;margin:0">&#160;</p>
<table style="border-collapse:collapse">
<tr>
<td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:center"> &#160;Fastener &#160;</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:center"> &#160;Assembly Equipment &#160;</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:center"> &#160;Consolidated &#160;</p> </td></tr>
<tr>
<td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:11pt Arial Narrow;margin:0;color:#339966"><span style="font:9pt Arial;color:#000000">Three Months Ended March 31, 2024:</span></p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Automotive</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;4,629,190</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;48,665</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$&#160; &#160;&#160;&#160;4,677,955</p> </td></tr>
<tr>
<td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Non-automotive</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">2,094,564</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">1,080,662</p> </td>
<td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">3,175,226</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Total net sales</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;6,723,854</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;1,129,327</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;7,853,181</p> </td></tr>
<tr>
<td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">&#160;</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Three Months Ended March 31, 2023:</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Automotive</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;5,006,190</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;44,878</p> </td>
<td style="width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;5,051,068</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Non-automotive</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">2,850,623</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">828,034</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">3,678,657</p> </td></tr>
<tr>
<td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Total net sales</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;7,856,813</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$&#160; &#160; &#160;872,912</p> </td>
<td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;8,729,725</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr> </table> <p style="font:10pt Courier New;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">The following table presents revenue by segment, further disaggregated by location:</p> <p style="font:10pt Courier New;margin:0">&#160;</p>
<table style="border-collapse:collapse">
<tr>
<td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:center"> &#160;Fastener &#160;</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:center"> &#160;Assembly Equipment &#160;</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:center"> &#160;Consolidated &#160;</p> </td></tr>
<tr>
<td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0"><span style="font:9pt Arial">Three Months Ended March 31, 2024:</span></p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">United States</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;5,435,993</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;1,109,221</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;6,545,214</p> </td></tr>
<tr>
<td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Foreign</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">1,287,861</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">20,106</p> </td>
<td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">1,307,967</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Total net sales</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;6,723,854</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$&#160; &#160;&#160;1,129,327</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;7,853,181</p> </td></tr>
<tr>
<td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">&#160;</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Three Months Ended March 31, 2023:</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">United States</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;6,391,747</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;&#160;786,571</p> </td>
<td style="width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;7,178,318</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Foreign</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">1,465,066</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">86,341</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">1,551,407</p> </td></tr>
<tr>
<td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Total net sales</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;7,856,813</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;&#160;872,912</p> </td>
<td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;8,729,725</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr> </table> <p style="font:10pt Courier New;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_RevenueFromContractWithCustomerTextBlock">
<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 entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.</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/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-9<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-15<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-13<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 606<br> -Publisher FASB<br> -URI https://asc.fasb.org//606/tableOfContent<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;">us-gaap_RevenueFromContractWithCustomerTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<FILENAME>R12.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.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213459845056">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</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_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes</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_us-gaap_IncomeTaxDisclosureTextBlock', window );">Income Taxes</a></td>
<td class="text"><p style="font:10pt Arial;margin:0">5. &#160;The Company&#8217;s effective tax rates were approximately 22.9% and 20.9% for the first quarter of 2024 and 2023, respectively.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">The Company&#8217;s federal income tax returns for the 2020 through 2023 tax years are subject to examination by the Internal Revenue Service (&#8220;IRS&#8221;). &#160;Management does not anticipate any adjustments that would result in a material change to the results of operations or financial condition of the Company. &#160;No statutes of limitation have been extended on any of the Company&#8217;s federal income tax filings. The statute of limitations on the Company&#8217;s 2020 through 2023 federal income tax returns will expire on September 15, 2024 through 2027, respectively. </p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">The Company&#8217;s state income tax returns for the 2020 through 2023 tax years remain subject to examination by various state authorities with the latest closing period on October 31, 2027. &#160;The Company is not currently under examination by any state authority for income tax purposes and no statutes of limitation for state income tax filings have been extended.</p> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_IncomeTaxDisclosureTextBlock">
<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 entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.</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/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-13<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//740/tableOfContent<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-14<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-21<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 270<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482526/740-270-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-17<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.5.Q1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 11.C)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482603/740-30-50-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;">us-gaap_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<FILENAME>R13.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.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213458882096">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</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_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes</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_us-gaap_InventoryDisclosureTextBlock', window );">Inventories</a></td>
<td class="text"><p style="font:10pt Arial;margin:0">6. &#160;Inventories are stated at the lower of cost or net realizable value, cost being determined by the first-in, first-out method.</p> <p style="font:10pt Courier New;margin:0;color:#000000"><span style="font-family:Arial"> &#160;A summary of inventories at the dates indicated is as follows:</span> </p> <p style="font:10pt Courier New;margin:0">&#160;</p>
<table style="border-collapse:collapse">
<tr>
<td style="background-color:#CEE7FF;width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:87.85pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:center"><span style="border-bottom:1px solid #000000">March 31, 2024</span></p> </td>
<td style="background-color:#CEE7FF;width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:center">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:87.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:center"><span style="border-bottom:1px solid #000000">December 31, 2023</span></p> </td></tr>
<tr>
<td style="width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0">Raw material</p> </td>
<td style="width:87.85pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;2,432,691&#160;&#160;&#160;</p> </td>
<td style="width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:87.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;2,878,869&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0">Work-in-process</p> </td>
<td style="background-color:#CEE7FF;width:87.85pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">2,463,760&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:87.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">2,374,795&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0">Finished goods</p> </td>
<td style="width:87.85pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">2,390,224&#160;&#160;&#160;</p> </td>
<td style="width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:87.55pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">2,614,989&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0">Inventories, gross</p> </td>
<td style="background-color:#CEE7FF;width:87.85pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">7,286,675&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:87.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">7,868,653&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0">Valuation reserves</p> </td>
<td style="width:87.85pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">(540,000)&#160;&#160;</p> </td>
<td style="width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:87.55pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">(541,000)&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0">Inventories, net</p> </td>
<td style="background-color:#CEE7FF;width:87.85pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;6,746,675&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:87.55pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;7,327,653&#160;&#160;&#160;</p> </td></tr> </table> <p style="font:10pt Arial;margin:0">&#160;</p> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_InventoryDisclosureTextBlock">
<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 entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.</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/disclosureRef<br> -Topic 330<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//330/tableOfContent<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;">us-gaap_InventoryDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>25
<FILENAME>R14.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.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213451527968">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Reporting<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</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_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes</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_us-gaap_SegmentReportingDisclosureTextBlock', window );">Segment Reporting</a></td>
<td class="text"><p style="font:10pt Arial;margin:0">7. &#160;Segment Information&#8212;The Company operates in two business segments as determined by its products. &#160;The fastener segment includes rivets, cold-formed fasteners and parts and screw machine products. &#160;The assembly equipment segment includes automatic rivet setting machines and parts and tools for such machines.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">Information by segment for the periods presented is as follows:</p> <p style="font:10pt Arial;margin:0">&#160;</p>
<table style="border-collapse:collapse">
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"></td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:center"><span style="border-bottom:1px solid #000000">Fastener</span></p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:center"><span style="border-bottom:1px solid #000000">Assembly Equipment</span></p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:center"><span style="border-bottom:1px solid #000000">Unallocated Corporate</span></p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:center"><span style="border-bottom:1px solid #000000">Consolidated</span></p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Three Months Ended March 31, 2024:</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Net sales</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;6,723,854&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;1,129,327&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;7,853,181&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Depreciation</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">293,381&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">29,484&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">540&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">323,405&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Segment operating profit (loss)</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(389,124)&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">322,621&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(66,503)&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Selling and administrative expenses</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(836,800)&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(836,800)&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Interest income</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">28,469&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">28,469&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Loss before income taxes</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;(874,834)&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Capital expenditures</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">54,222&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">38,863&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">93,085&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Segment assets:</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0"> &#160;&#160;Accounts receivable, net</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">4,871,135&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">592,582&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">5,463,717&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0"> &#160;&#160;Inventories, net</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">5,227,398&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">1,519,277&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">6,746,675&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0"> &#160;&#160;Property, plant and equipment, net</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">9,159,982&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">1,195,183&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">1,020,133&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">11,375,298&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0"> &#160;&#160;Other assets</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">4,207,043&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">4,207,043&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;27,792,733&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Three Months Ended March 31, 2023:</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Net sales</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;7,856,813&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;872,912&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;8,729,725&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Depreciation</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">272,636&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">30,732&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">2,664&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">306,032&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Segment operating profit (loss)</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(428,501)&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">189,315&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(239,186)&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Selling and administrative expenses</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(538,537)&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(538,537)&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Interest income</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">40,586&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">40,586&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Loss before income taxes</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;(737,137)&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Capital expenditures</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">336,066&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">77,353&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">413,419&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Segment assets:</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0"> &#160;&#160;Accounts receivable, net</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">5,857,565&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">315,509&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">6,173,074&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0"> &#160;&#160;Inventories, net</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">8,566,031&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">1,432,921&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">9,998,952&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0"> &#160;&#160;Property, plant and equipment, net</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">9,625,759&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">1,272,765&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">1,070,656&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">11,969,180&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0"> &#160;&#160;Other assets</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">5,551,041&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">5,551,041&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;33,692,247&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td></tr> </table> <p style="font:10pt Arial;margin:0">&#160;</p> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_SegmentReportingDisclosureTextBlock">
<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 entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.</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/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-15<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//280/tableOfContent<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 26<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-26<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 34<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-34<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-21<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-21<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<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;">us-gaap_SegmentReportingDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<FILENAME>R15.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.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213450155760">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounting Policies (Policies)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</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_us-gaap_BasisOfAccountingPolicyPolicyTextBlock', window );">Accounting Policies</a></td>
<td class="text"><p style="font:10pt Arial;margin:0">1. &#160;In the opinion of the Company, the accompanying unaudited interim financial statements contain all adjustments necessary to present fairly the financial position of the Company as of March 31, 2024 (unaudited) and December 31, 2023 (audited) and the results of operations and changes in cash flows for the indicated periods. &#160;Certain information and note disclosures normally included in financial statements prepared in accordance with accounting principles generally accepted in the United States of America have been omitted from these unaudited financial statements in accordance with applicable rules. Please refer to the financial statements and notes thereto included in the Company&#8217;s Annual Report on Form 10-K for the year ended December 31, 2023.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">The preparation of financial statements in conformity with generally accepted accounting principles requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting period. &#160;Actual results could differ from those estimates. &#160;The results of operations for the three month period ended March 31, 2024 are not necessarily indicative of the results to be expected for the year.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">In November 2023, the FASB issued ASU No. 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures, which requires a public entity to disclose its significant segment expense categories and amounts for each reportable segment. &#160;The new guidance is effective for fiscal years beginning after December 15, 2023, and interim periods in fiscal years beginning after December 15, 2024. &#160;The Company is evaluating the impact of this ASU. &#160;</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">In December 2023, the FASB issued ASU No. 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures, to enhance the transparency and decision usefulness of income tax disclosures providing investors with information to better assess how an entity&#8217;s operations and related tax risks and tax planning and operational opportunities affect its tax rate and prospects for future cash flows. The new guidance is effective for annual periods beginning after December 31, 2024. &#160;The Company is evaluating the impact that it will have on our consolidated financial statements and disclosures.</p> <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_us-gaap_ConcentrationRiskCreditRisk', window );">Risks and Uncertainties</a></td>
<td class="text"><p style="font:10pt Arial;margin:0">2. &#160;The Company extends credit on the basis of terms that are customary within our markets to various companies doing business primarily in the automotive industry. &#160;The Company has a concentration of credit risk primarily within the automotive industry and in the Midwestern United States. &#160;The Company has established an allowance for accounts that may become uncollectible in the future. &#160;This estimated allowance is based primarily on management's evaluation of the financial condition of the customer and historical experience. &#160;The Company monitors its accounts receivable and charges to expense an amount equal to its estimate of potential credit losses. &#160;The Company considers a number of factors in determining its estimates, including the length of time its trade accounts receivable are past due, the Company's previous loss history and the customer's current ability to pay its obligation. &#160;The Company also considers current economic conditions, the economic outlook and industry-specific factors in its evaluation. &#160;Accounts receivable balances are charged off against the allowance when it is determined that the receivable will not be recovered.</p> <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_us-gaap_CommitmentsAndContingenciesPolicyTextBlock', window );">Commitments and Contingencies</a></td>
<td class="text"><p style="font:10pt Arial;margin:0">3. &#160;The Company is, from time to time, involved in litigation, including environmental claims and contract disputes, in the normal course of business. &#160;While it is not possible at this time to establish the ultimate amount of liability with respect to contingent liabilities, including those related to legal proceedings, management is of the opinion that the aggregate amount of any such liabilities, for which provision has not been made, will not have a material adverse effect on the Company's financial position, liquidity, results of operations or cash flows. </p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">The Company recognizes a provision if it is probable that an outflow of cash or other economic resources that can be reliably measured will be required to settle the provision. In determining the likelihood and timing of potential cash outflows, management needs to make estimates, the assessment of which is based in part on internal and external financial and legal guidance and other related factors. For contingencies, the Company is required to exercise significant judgement to determine whether the risk of loss is possible but not probable. Contingencies involve inherent uncertainties including, but not limited to, negotiations between affected parties, among other factors, and the amount of actual loss may be significantly more or less that what was provided for with respect to such contingencies. </p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0;color:#000000">The Company was recently notified by one of its customers that certain fasteners manufactured by the Company&#8217;s wholly-owned subsidiary, H&amp;L Tool Company Inc., may not conform to customer specifications. &#160;These fasteners become part of an assembly that is ultimately used in the braking system of certain vehicles. &#160;Based on information provided to the Company by the customer and the Company&#8217;s internal review, which is ongoing, we understand that it was necessary for the customer to identify and sort the non-conforming parts in its inventory and take certain other related actions as a result of the alleged non-conforming parts. The customer has also indicated that its end customer has incurred costs relating to the alleged defective part, including costs to repair certain of the vehicles that included these non-conforming fasteners. &#160;Based on discussions with our customer as to the scope of the actions taken by the customer to date and the Company&#8217;s own internal analysis to date, we determined an estimate of $243,000 as a contingent liability in our financial statements during the three months ended March 31, 2024, in anticipation of potential reimbursement of certain expenses that the customer may have incurred as a result of the non-conforming parts. Our discussions with the customer and our internal review process are ongoing, and the ultimate amount of such liability, if any, may be more or less than the amount reflected in the financial statements for the first quarter of 2024.</p> <p style="font:10pt Arial;margin:0;color:#000000">&#160;</p> <p style="font:10pt Arial;margin:0;color:#000000">The Company may also incur additional potentially significant costs related to this issue, which could materially and adversely affect our results of operations and financial condition. &#160;At this time, the Company is continuing its investigation and cannot quantify potential additional financial liability, if any, due to the ultimate costs that may or may not be incurred by the parties involved in this matter, and the allocation of those costs among the parties involved. It is not possible at this time to establish the ultimate amount of any such contingent liabilities, including those related to any legal proceedings that may result related to this matter. Accordingly, no additional amount has been accrued in our financial statements at March 31, 2024.</p> <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_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock', window );">Revenue</a></td>
<td class="text"><p style="font:10pt Arial;margin:0">4. &#160;Revenue&#8212;The Company operates in the fastener industry and is in the business of producing and selling rivets, cold-formed fasteners and parts, screw machine products, automatic rivet setting machines and parts and tools for such machines. &#160;Revenue is recognized when control of the promised goods or services is transferred to our customers, generally upon shipment of goods or completion of services, in an amount that reflects the consideration we expect to receive in exchange for those goods or services. &#160;For certain assembly equipment segment transactions, revenue is recognized based on progress toward completion of the performance obligation using a labor-based measure. &#160;Labor incurred and specific material costs are compared to milestone payments per sales contract. &#160;Based on our experience, this method most accurately reflects the transfer of goods under such contracts. &#160;During the first quarter of 2024, the Company realized revenue of $106,500 related to such contracts and has a remaining performance obligation of $16,600 which is expected to be recognized in the next three months.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">Sales taxes we may collect concurrent with revenue producing activities are excluded from revenue. &#160;Revenue is recognized net of certain sales adjustments to arrive at net sales as reported on the statement of operations. &#160;These adjustments primarily relate to customer returns and allowances, which vary over time. &#160;The Company records a liability and reduction in sales for estimated product returns based upon historical experience. &#160;If we determine that our obligation under warranty claims is probable and subject to reasonable determination, an estimate of that liability is recorded as an offset against revenue at that time. &#160;As of March 31, 2024 and December 31, 2023 reserves for warranty claims were not material. &#160;Cash received by the Company prior to transfer of control is recorded as unearned revenue.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">Shipping and handling fees billed to customers are recognized in net sales, and related costs as cost of sales, when incurred.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">Sales commissions are expensed when incurred because the amortization period is less than one year. &#160;These costs are recorded within selling and administrative expenses in the statement of operations.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <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_us-gaap_IncomeTaxPolicyTextBlock', window );">Income Taxes</a></td>
<td class="text"><p style="font:10pt Arial;margin:0">5. &#160;The Company&#8217;s effective tax rates were approximately 22.9% and 20.9% for the first quarter of 2024 and 2023, respectively.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">The Company&#8217;s federal income tax returns for the 2020 through 2023 tax years are subject to examination by the Internal Revenue Service (&#8220;IRS&#8221;). &#160;Management does not anticipate any adjustments that would result in a material change to the results of operations or financial condition of the Company. &#160;No statutes of limitation have been extended on any of the Company&#8217;s federal income tax filings. The statute of limitations on the Company&#8217;s 2020 through 2023 federal income tax returns will expire on September 15, 2024 through 2027, respectively. </p> <p style="font:10pt Arial;margin:0">&#160;</p> <p style="font:10pt Arial;margin:0">The Company&#8217;s state income tax returns for the 2020 through 2023 tax years remain subject to examination by various state authorities with the latest closing period on October 31, 2027. &#160;The Company is not currently under examination by any state authority for income tax purposes and no statutes of limitation for state income tax filings have been extended.</p> <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_us-gaap_InventoryPolicyTextBlock', window );">Inventories</a></td>
<td class="text"><p style="font:10pt Arial;margin:0">6. &#160;Inventories are stated at the lower of cost or net realizable value, cost being determined by the first-in, first-out method.</p> <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_us-gaap_SegmentReportingPolicyPolicyTextBlock', window );">Segment Reporting</a></td>
<td class="text"><p style="font:10pt Arial;margin:0">7. &#160;Segment Information&#8212;The Company operates in two business segments as determined by its products. &#160;The fastener segment includes rivets, cold-formed fasteners and parts and screw machine products. &#160;The assembly equipment segment includes automatic rivet setting machines and parts and tools for such machines.</p> <p style="font:10pt Arial;margin:0">&#160;</p> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BasisOfAccountingPolicyPolicyTextBlock">
<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>Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).</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;">us-gaap_BasisOfAccountingPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesPolicyTextBlock">
<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>Disclosure of accounting policy for commitments and contingencies, which may include policies for recognizing and measuring loss and gain contingencies.</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/disclosureRef<br> -Topic 954<br> -SubTopic 450<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480598/954-450-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482425/460-10-50-8<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;">us-gaap_CommitmentsAndContingenciesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskCreditRisk">
<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>Disclosure of accounting policy for credit risk.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 825<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480981/942-825-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-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;">us-gaap_ConcentrationRiskCreditRisk</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxPolicyTextBlock">
<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>Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.</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/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(h)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479886/946-10-S99-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-17<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-9<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482525/740-10-45-25<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482525/740-10-45-28<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-19<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-20<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;">us-gaap_IncomeTaxPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryPolicyTextBlock">
<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>Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.</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/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483489/210-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483426/235-10-50-4<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 912<br> -SubTopic 330<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482105/912-330-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//330/tableOfContent<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483080/330-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483080/330-10-50-4<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 270<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482989/270-10-45-6<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;">us-gaap_InventoryPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock">
<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>Disclosure of accounting policy for revenue from contract with customer.</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/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-17<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-19<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-18<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-18<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-20<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-20<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-20<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-20<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483426/235-10-50-4<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 606<br> -Publisher FASB<br> -URI https://asc.fasb.org//606/tableOfContent<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;">us-gaap_RevenueFromContractWithCustomerPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingPolicyPolicyTextBlock">
<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>Disclosure of accounting policy for segment reporting.</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/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 47<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482785/280-10-55-47<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 29<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-29<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 29<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-29<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 29<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-29<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 29<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-29<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 29<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-29<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 29<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-29<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;">us-gaap_SegmentReportingPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>27
<FILENAME>R16.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.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213451547920">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue: Disaggregation of Revenue (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=fil_LocationMember', window );">Location</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_us-gaap_DisaggregationOfRevenueTableTextBlock', window );">Disaggregation of Revenue</a></td>
<td class="text"><p style="font:10pt Courier New;margin:0">&#160;</p>
<table style="border-collapse:collapse">
<tr>
<td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:center"> &#160;Fastener &#160;</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:center"> &#160;Assembly Equipment &#160;</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:center"> &#160;Consolidated &#160;</p> </td></tr>
<tr>
<td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0"><span style="font:9pt Arial">Three Months Ended March 31, 2024:</span></p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">United States</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;5,435,993</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;1,109,221</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;6,545,214</p> </td></tr>
<tr>
<td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Foreign</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">1,287,861</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">20,106</p> </td>
<td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">1,307,967</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Total net sales</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;6,723,854</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$&#160; &#160;&#160;1,129,327</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;7,853,181</p> </td></tr>
<tr>
<td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">&#160;</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Three Months Ended March 31, 2023:</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">United States</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;6,391,747</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;&#160;786,571</p> </td>
<td style="width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;7,178,318</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Foreign</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">1,465,066</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">86,341</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">1,551,407</p> </td></tr>
<tr>
<td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Total net sales</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;7,856,813</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;&#160;872,912</p> </td>
<td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;8,729,725</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr> </table> <p style="font:10pt Courier New;margin:0">&#160;</p> <span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=fil_EndMarketMember', window );">End Market</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_us-gaap_DisaggregationOfRevenueTableTextBlock', window );">Disaggregation of Revenue</a></td>
<td class="text"><p style="font:10pt Courier New;margin:0">&#160;</p>
<table style="border-collapse:collapse">
<tr>
<td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:center"> &#160;Fastener &#160;</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:center"> &#160;Assembly Equipment &#160;</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:center"> &#160;Consolidated &#160;</p> </td></tr>
<tr>
<td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:11pt Arial Narrow;margin:0;color:#339966"><span style="font:9pt Arial;color:#000000">Three Months Ended March 31, 2024:</span></p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Automotive</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;4,629,190</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;48,665</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$&#160; &#160;&#160;&#160;4,677,955</p> </td></tr>
<tr>
<td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Non-automotive</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">2,094,564</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">1,080,662</p> </td>
<td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">3,175,226</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Total net sales</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;6,723,854</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;1,129,327</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;7,853,181</p> </td></tr>
<tr>
<td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">&#160;</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Three Months Ended March 31, 2023:</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Automotive</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;5,006,190</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;44,878</p> </td>
<td style="width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;5,051,068</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Non-automotive</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">2,850,623</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">828,034</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">3,678,657</p> </td></tr>
<tr>
<td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Total net sales</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;7,856,813</p> </td>
<td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$&#160; &#160; &#160;872,912</p> </td>
<td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">$ &#160;&#160;&#160;&#160;8,729,725</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000;text-align:right">&#160;</p> </td></tr> </table> <p style="font:10pt Courier New;margin:0">&#160;</p> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueTableTextBlock">
<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>Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<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;">us-gaap_DisaggregationOfRevenueTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=fil_LocationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=fil_LocationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=fil_EndMarketMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=fil_EndMarketMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<FILENAME>R17.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.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213457798432">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories: Inventories (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</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_us-gaap_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">Inventories</a></td>
<td class="text"><p style="font:10pt Courier New;margin:0">&#160;</p>
<table style="border-collapse:collapse">
<tr>
<td style="background-color:#CEE7FF;width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:87.85pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:center"><span style="border-bottom:1px solid #000000">March 31, 2024</span></p> </td>
<td style="background-color:#CEE7FF;width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:center">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:87.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:center"><span style="border-bottom:1px solid #000000">December 31, 2023</span></p> </td></tr>
<tr>
<td style="width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0">Raw material</p> </td>
<td style="width:87.85pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;2,432,691&#160;&#160;&#160;</p> </td>
<td style="width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:87.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;2,878,869&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0">Work-in-process</p> </td>
<td style="background-color:#CEE7FF;width:87.85pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">2,463,760&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:87.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">2,374,795&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0">Finished goods</p> </td>
<td style="width:87.85pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">2,390,224&#160;&#160;&#160;</p> </td>
<td style="width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:87.55pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">2,614,989&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0">Inventories, gross</p> </td>
<td style="background-color:#CEE7FF;width:87.85pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">7,286,675&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:87.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">7,868,653&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0">Valuation reserves</p> </td>
<td style="width:87.85pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">(540,000)&#160;&#160;</p> </td>
<td style="width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:87.55pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">(541,000)&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0">Inventories, net</p> </td>
<td style="background-color:#CEE7FF;width:87.85pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;6,746,675&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:87.55pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"><p style="font:9pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;&#160;7,327,653&#160;&#160;&#160;</p> </td></tr> </table> <p style="font:10pt Arial;margin:0">&#160;</p> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock">
<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>Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483489/210-10-50-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;">us-gaap_ScheduleOfInventoryCurrentTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlockSupplementAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>29
<FILENAME>R18.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.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213545232272">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Reporting: Schedule of Segment Reporting by Segment (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</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_us-gaap_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock', window );">Schedule of Segment Reporting by Segment</a></td>
<td class="text"><p style="font:10pt Arial;margin:0">&#160;</p>
<table style="border-collapse:collapse">
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"></td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:center"><span style="border-bottom:1px solid #000000">Fastener</span></p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:center"><span style="border-bottom:1px solid #000000">Assembly Equipment</span></p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:center"><span style="border-bottom:1px solid #000000">Unallocated Corporate</span></p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:center"><span style="border-bottom:1px solid #000000">Consolidated</span></p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Three Months Ended March 31, 2024:</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Net sales</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;6,723,854&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;1,129,327&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;7,853,181&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Depreciation</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">293,381&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">29,484&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">540&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">323,405&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Segment operating profit (loss)</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(389,124)&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">322,621&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(66,503)&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Selling and administrative expenses</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(836,800)&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(836,800)&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Interest income</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">28,469&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">28,469&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Loss before income taxes</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;(874,834)&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Capital expenditures</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">54,222&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">38,863&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">93,085&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Segment assets:</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0"> &#160;&#160;Accounts receivable, net</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">4,871,135&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">592,582&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">5,463,717&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0"> &#160;&#160;Inventories, net</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">5,227,398&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">1,519,277&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">6,746,675&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0"> &#160;&#160;Property, plant and equipment, net</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">9,159,982&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">1,195,183&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">1,020,133&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">11,375,298&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0"> &#160;&#160;Other assets</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">4,207,043&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">4,207,043&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;27,792,733&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Three Months Ended March 31, 2023:</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Net sales</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;7,856,813&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;872,912&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;&#160;8,729,725&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Depreciation</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">272,636&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">30,732&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">2,664&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">306,032&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Segment operating profit (loss)</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(428,501)&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">189,315&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(239,186)&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Selling and administrative expenses</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(538,537)&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(538,537)&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Interest income</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">40,586&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">40,586&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Loss before income taxes</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;&#160;(737,137)&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Capital expenditures</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">336,066&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">77,353&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">413,419&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Segment assets:</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0"> &#160;&#160;Accounts receivable, net</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">5,857,565&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">315,509&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">6,173,074&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0"> &#160;&#160;Inventories, net</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">8,566,031&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">1,432,921&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">9,998,952&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0"> &#160;&#160;Property, plant and equipment, net</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">9,625,759&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">1,272,765&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">1,070,656&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">11,969,180&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0"> &#160;&#160;Other assets</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">0&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">5,551,041&#160;&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">5,551,041&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">&#160;</p> </td>
<td style="width:75.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;&#160;33,692,247&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0">&#160;</p> </td></tr> </table> <p style="font:10pt Arial;margin:0">&#160;</p> <span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock">
<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>Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-25<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<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;">us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlockSupplementAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<FILENAME>R19.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.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213450056896">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue: Disaggregation of Revenue (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Mar. 31, 2023</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_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 7,853,181<span></span>
</td>
<td class="nump">$ 8,729,725<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">UNITED STATES</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">6,545,214<span></span>
</td>
<td class="nump">7,178,318<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=us-gaap_NonUsMember', window );">Non-US</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">1,307,967<span></span>
</td>
<td class="nump">1,551,407<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=fil_AutomotiveMember', window );">Automotive</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">4,677,955<span></span>
</td>
<td class="nump">5,051,068<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=fil_NonautomotiveMember', window );">NonAutomotive</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">3,175,226<span></span>
</td>
<td class="nump">3,678,657<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=fil_FastenerMember', window );">Fastener</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">6,723,854<span></span>
</td>
<td class="nump">7,856,813<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=fil_FastenerMember', window );">Fastener | UNITED STATES</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">5,435,993<span></span>
</td>
<td class="nump">6,391,747<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=fil_FastenerMember', window );">Fastener | Non-US</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">1,287,861<span></span>
</td>
<td class="nump">1,465,066<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=fil_FastenerMember', window );">Fastener | Automotive</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">4,629,190<span></span>
</td>
<td class="nump">5,006,190<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=fil_FastenerMember', window );">Fastener | NonAutomotive</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">2,094,564<span></span>
</td>
<td class="nump">2,850,623<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=fil_AssemblyEquipmentMember', window );">Assembly Equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">1,129,327<span></span>
</td>
<td class="nump">872,912<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=fil_AssemblyEquipmentMember', window );">Assembly Equipment | UNITED STATES</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">1,109,221<span></span>
</td>
<td class="nump">786,571<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=fil_AssemblyEquipmentMember', window );">Assembly Equipment | Non-US</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">20,106<span></span>
</td>
<td class="nump">86,341<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=fil_AssemblyEquipmentMember', window );">Assembly Equipment | Automotive</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">48,665<span></span>
</td>
<td class="nump">44,878<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=fil_AssemblyEquipmentMember', window );">Assembly Equipment | NonAutomotive</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 1,080,662<span></span>
</td>
<td class="nump">$ 828,034<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<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>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</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/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479941/924-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-4<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;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_srt_StatementGeographicalAxis=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=us-gaap_NonUsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=us-gaap_NonUsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=fil_AutomotiveMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=fil_AutomotiveMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=fil_NonautomotiveMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=fil_NonautomotiveMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=fil_FastenerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=fil_FastenerMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=fil_AssemblyEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=fil_AssemblyEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>31
<FILENAME>R20.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.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213452522080">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Inventories: Inventories (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</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_us-gaap_TextBlockAbstract', window );"><strong>Details</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_InventoryRawMaterials', window );">Raw material</a></td>
<td class="nump">$ 2,432,691<span></span>
</td>
<td class="nump">$ 2,878,869<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_us-gaap_InventoryWorkInProcess', window );">Work-in-process</a></td>
<td class="nump">2,463,760<span></span>
</td>
<td class="nump">2,374,795<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_us-gaap_InventoryFinishedGoods', window );">Finished goods</a></td>
<td class="nump">2,390,224<span></span>
</td>
<td class="nump">2,614,989<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_us-gaap_InventoryGross', window );">Inventories, gross</a></td>
<td class="nump">7,286,675<span></span>
</td>
<td class="nump">7,868,653<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_us-gaap_InventoryValuationReserves', window );">Valuation reserves</a></td>
<td class="num">(540,000)<span></span>
</td>
<td class="num">(541,000)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories, net</a></td>
<td class="nump">$ 6,746,675<span></span>
</td>
<td class="nump">$ 7,327,653<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryFinishedGoods">
<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>Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_InventoryFinishedGoods</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryGross">
<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>Gross amount, as of the balance sheet date, of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_InventoryGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<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>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</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/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryRawMaterials">
<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>Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_InventoryRawMaterials</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryValuationReserves">
<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>Amount of valuation reserve for inventory.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB TOPIC 5.BB)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480581/330-10-S99-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;">us-gaap_InventoryValuationReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryWorkInProcess">
<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>Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_InventoryWorkInProcess</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<FILENAME>R21.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.24.1.1.u2</span><table class="report" border="0" cellspacing="2" id="idm140213450454832">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Reporting: Schedule of Segment Reporting by Segment (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Mar. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2023</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_us-gaap_Revenues', window );">Net sales</a></td>
<td class="nump">$ 7,853,181<span></span>
</td>
<td class="nump">$ 8,729,725<span></span>
</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_us-gaap_Depreciation', window );">Depreciation</a></td>
<td class="nump">323,405<span></span>
</td>
<td class="nump">306,032<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable - Less allowances of $160,000</a></td>
<td class="nump">5,463,717<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,275,882<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_us-gaap_InventoryNet', window );">Inventories, net</a></td>
<td class="nump">6,746,675<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,327,653<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_us-gaap_PropertyPlantAndEquipmentNet', window );">Net property, plant and equipment</a></td>
<td class="nump">11,375,298<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 11,665,082<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=fil_FastenerMember', window );">Fastener</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales</a></td>
<td class="nump">6,723,854<span></span>
</td>
<td class="nump">7,856,813<span></span>
</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_us-gaap_Depreciation', window );">Depreciation</a></td>
<td class="nump">293,381<span></span>
</td>
<td class="nump">272,636<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_fil_SegmentOperatingprofit', window );">Segment operating profit</a></td>
<td class="num">(389,124)<span></span>
</td>
<td class="num">(428,501)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_fil_SellingAndAdministrativeExpensesUnallocatedCorporate', window );">Selling and Administrative Expenses</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestAndOtherIncome', window );">Interest income</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</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_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Capital expenditures</a></td>
<td class="nump">54,222<span></span>
</td>
<td class="nump">336,066<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable - Less allowances of $160,000</a></td>
<td class="nump">4,871,135<span></span>
</td>
<td class="nump">5,857,565<span></span>
</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_us-gaap_InventoryNet', window );">Inventories, net</a></td>
<td class="nump">5,227,398<span></span>
</td>
<td class="nump">8,566,031<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Net property, plant and equipment</a></td>
<td class="nump">9,159,982<span></span>
</td>
<td class="nump">9,625,759<span></span>
</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_us-gaap_OtherAssets', window );">Other Assets</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=fil_AssemblyEquipmentMember', window );">Assembly Equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_Revenues', window );">Net sales</a></td>
<td class="nump">1,129,327<span></span>
</td>
<td class="nump">872,912<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Depreciation', window );">Depreciation</a></td>
<td class="nump">29,484<span></span>
</td>
<td class="nump">30,732<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_fil_SegmentOperatingprofit', window );">Segment operating profit</a></td>
<td class="nump">322,621<span></span>
</td>
<td class="nump">189,315<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_fil_SellingAndAdministrativeExpensesUnallocatedCorporate', window );">Selling and Administrative Expenses</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</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_us-gaap_InterestAndOtherIncome', window );">Interest income</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Capital expenditures</a></td>
<td class="nump">38,863<span></span>
</td>
<td class="nump">0<span></span>
</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_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable - Less allowances of $160,000</a></td>
<td class="nump">592,582<span></span>
</td>
<td class="nump">315,509<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories, net</a></td>
<td class="nump">1,519,277<span></span>
</td>
<td class="nump">1,432,921<span></span>
</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_us-gaap_PropertyPlantAndEquipmentNet', window );">Net property, plant and equipment</a></td>
<td class="nump">1,195,183<span></span>
</td>
<td class="nump">1,272,765<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAssets', window );">Other Assets</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=us-gaap_CorporateMember', window );">Corporate Segment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</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_us-gaap_Depreciation', window );">Depreciation</a></td>
<td class="nump">540<span></span>
</td>
<td class="nump">2,664<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_fil_SegmentOperatingprofit', window );">Segment operating profit</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_fil_SellingAndAdministrativeExpensesUnallocatedCorporate', window );">Selling and Administrative Expenses</a></td>
<td class="num">(836,800)<span></span>
</td>
<td class="num">(538,537)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestAndOtherIncome', window );">Interest income</a></td>
<td class="nump">28,469<span></span>
</td>
<td class="nump">40,586<span></span>
</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_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Capital expenditures</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">77,353<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable - Less allowances of $160,000</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</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_us-gaap_InventoryNet', window );">Inventories, net</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Net property, plant and equipment</a></td>
<td class="nump">1,020,133<span></span>
</td>
<td class="nump">1,070,656<span></span>
</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_us-gaap_OtherAssets', window );">Other Assets</a></td>
<td class="nump">$ 4,207,043<span></span>
</td>
<td class="nump">$ 5,551,041<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_SegmentOperatingprofit">
<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 net result for the period of deducting segment operating expenses from segment operating revenues.</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;">fil_SegmentOperatingprofit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_fil_SellingAndAdministrativeExpensesUnallocatedCorporate">
<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 aggregate total costs related to selling a firm's product and services, as well as all other general and adminstrative expenses</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;">fil_SellingAndAdministrativeExpensesUnallocatedCorporate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_AccountsReceivableNetCurrent">
<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>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</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/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481990/310-10-45-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481990/310-10-45-9<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;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Depreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-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;">us-gaap_Depreciation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</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_us-gaap_InterestAndOtherIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of interest income and other income recognized during the period. Included in this element is interest derived from investments in debt securities, cash and cash equivalents, and other investments which reflect the time value of money or transactions in which the payments are for the use or forbearance of money and other income from ancillary business-related activities (that is, excluding major activities considered part of the normal operations of the business).</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;">us-gaap_InterestAndOtherIncome</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_InventoryNet">
<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>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</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/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-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;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAssets">
<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>Amount of assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-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;">us-gaap_OtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">
<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 cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-13<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;">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_PropertyPlantAndEquipmentNet">
<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>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 360<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480842/942-360-50-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;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Revenues">
<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>Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).</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/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479557/942-235-S99-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;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</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_us-gaap_StatementBusinessSegmentsAxis=fil_FastenerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=fil_FastenerMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=fil_AssemblyEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=fil_AssemblyEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=us-gaap_CorporateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=us-gaap_CorporateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>33
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( ,> JE@'04UB@0   +$    0    9&]C4')O<',O87!P+GAM
M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG
M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGD<Z,STA)8*O4'J@)I9GF
M3?X.CD:?<@X>K7A.YNJQ<&4GPZ4A!0W_<FW>J=0U[R;UEA_6\#MI7E!+ P04
M    " #'@*I8 *MI6>\    K @  $0   &1O8U!R;W!S+V-O<F4N>&ULS9+/
M3L,P#(=?!>7>.NU6)**N%Q"G(2$Q"<0M2KPMHOFCQ*C=VY.6K1."!^ 8^Y?/
MGR6W*@CE(SY''S"2P70SVMXEH<*&'8F" $CJB%:F,B=<;NY]M)+R,QX@2/4A
M#P@UY[=@D:26)&$"%F$ALJ[52JB(DGP\X[5:\.$S]C-,*\ >+3I*4)45L&Z:
M&$YCW\(5,,$(HTW?!=0+<:[^B9T[P,[),9DE-0Q#.:SF7-ZA@K>G[<N\;F%<
M(ND4YE_)"#H%W+#+Y-?5_</ND74UK]<%;XJ*[VHN>".:N_?)]8??5=AZ;?;F
M'QM?!+L6?MU%]P502P,$%     @ QX"J6)E<G",0!@  G"<  !,   !X;"]T
M:&5M92]T:&5M93$N>&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T$W-I=MNTF83M
M3A^%$5B-;'EDD81_OT<V$,N6#>V23;J;/ 0LZ?O.14?GZ#AY\^XN8NB&B)3R
M>&#9+]O6N[<OWN!7,B0103 9IZ_PP JE3%ZU6FD PSA]R1,2P]R"BPA+>!3+
MUES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?,_@5RU2-9:,!
M$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA5,+$P&IG/U9K
MQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M&N#C\7@XMLO2
MBW <!.!1NY["G?1LOZ1!";2C:=!DV/;:KI&FJHU33]/W?=_KFVB<"HU;3]-K
M=]W3CHG&K=!X#;[Q3X?#KHG&J]!TZVDF)_VN:Z3I%FA"1N/K>A(5M>5 TR
M6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T1G*=D 4. #?$
MT4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7<K_WUE[O)I#-ZG7TZSFN4
M?VFK :?MNYO/D_QSZ.2?IY/734+.<+PL"?'[(UMAAR=N.Q-R.AQG0GS/]O:1
MI24RS^_Y"NM./&<?5I:P7<_/Y)Z,<B.[W?98??9/1VXCUZG LR+7E$8D19_(
M+;KD$3BU20TR$S\(G8:8:E < J0),9:AAOBTQJP1X!-]M[X(R-^-B/>K;YH]
M5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J-2S%UGB5P/&M
MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZ<TT#PE"\D^DJ1CVFS(Z=T)LWH
M,QK!1J\;=8=HTCQZ_@7YG#4*')$;'0)G&[-&(81IN_ >KR2.FJW"$2M"/F(9
M-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$.$9)>-T(^8LZ+
MD!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]072N0/)J<_Z3(T
M!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL!_]':-\*K^(+
M.7\N?<^E[[GT/:'2MS<C?6?!TXM;WD9N6\3[KC':US0N*&-7<LW(QU2ODRG8
M.9_ [/UH/I[Q[?K9)(2OFEDM(Q:02X&S022X_(O*\"K$">AD6R4)RU3393>*
M$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.W<DOJMI2^M28X
M2O2QS'!.'LL,.V<\DAVV=Z =-?OV77;D(Z4P4Y=#N!I"O@-MNIW<.CB>F)&Y
M"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>(\J(A[J&&F,_#
M0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R4E5@,5O& RN0
MHGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K>9;'!51W/55OR
ML+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4XOT4SMA*7&+SC
MYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5YYN<KGHB=OJ7
M=\%@\OUPR4</Y3OG7_1=0ZY^]MWC^FZ3.TA,G'G%$0%T10(CE1P&%A<RY%#N
MDI &$P'-E,E$\ *"9*8<@)CZ"[WR#+DI%<ZM/CE_12R#ADY>TB42%(JP# 4A
M%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+A=OB5,V[&KXF
M8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.'<YMZN,)%K/]8UA[Y,M\Y<-LZW@->
MYA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> ,?-2K6J5D*Q$_
M2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H:,]6+K#F-"F]!
MU4#E/]O4#6CV#30<D05>,9FV-J/D3@H\W/[O#;#"Q([A[8N_ 5!+ P04
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
M@QJI2\/4O9#[/13!QXA>D3<0P4E0D0W)']8:D37D^#7.D\>'E=:0S7Y">9+
M(_KX\U.1N[B&8BD#O_/XGS:<'MV-6&?A;?&[LJQL%0J+[\"K\G75H((?*EB,
MWM,[=\L;12EA\Y.&I^VF<D<BLS"1/PG#*YN1;6*VVRZO2I>T-(UQ3J+YO/)9
M0KD$]>K"H0@;J<S"5/ZL!->M>GB<8"0EZSR)AMED4"&UMQYE+GE?LYQ2[)30
MS[&<RC\YTPU3NL_'>I+MQ&*V8RZ!:4Q22E/G7-=G":L&*J$%R2.M69C6#D+Z
M6NBY(43.B?-"D>VU]!;9FY-O)_;#U6]<W5:-1K6X@:;X30K=H/IO0?V-D8?N
M<\JU-%!C=)<[P4&Z-8#G-U*:QQO[A6;X(K?]!U!+ P04    " #'@*I81 G?
MI\P"  !@"0  &    'AL+W=O<FMS:&5E=',O<VAE970S+GAM;*V6;6_:,!#'
MOXJ53=,F=<T3!.@@4DLUK2^FH:)VK]WD(%8=F]E.Z?;I=W9H1""%MBHOB,^^
M^_MW9SO.>"W5O2X #'DLN= 3KS!F=>;[.BN@I/I4KD#@R$*JDAHTU=+7*P4T
M=T$E]Z,@2/R2,N&E8]<W4^E85H8S 3-%=%665/V] "[7$R_TGCJNV;(PML-/
MQRNZA#F8F]5,H>4W*CDK06@F!5&PF'CGX=ET9/V=PRV#M=YJ$YO)G93WUKC*
M)UY@@8!#9JP"Q<<#3(%S*X08?S::7C.E#=QN/ZE_=[EC+G=4PU3RWRPWQ<0;
M>B2'!:VXN9;K'[#)IV_U,LFU^R?KVG<P\DA6:2/+33 2E$S43_JXJ<-60-A[
M)B#:!$0O#8@W ;%+M"9S:5U20].QDFNBK#>JV8:KC8O&;)BPJS@W"D<9QIET
M*D6.:P(YP9:6G.74H'%!.149D+D5UN3SC:!5SG#D"_E*9E2!, 48EE&.]D?B
M$UU@IQ[[!IFLLI]MYK^HYX^>F?\G5:<D#D](%$2]CO#IX?!+R)KPN!WN8R6:
M<D1-.2*G%[]7.;HRKJ?H=4]AC^697M$,)AZ>.PWJ ;STTX<P";YUY?].8JUJ
MQ$TUXD/JZ0R/%"B%!9@;F=V?V)4G4J'EJG)+>05D!MAA5[^K%+5^XO3M"^4A
M#<;^PW9^ASQ:T+T&NO<Z: >GR7EE"JG8/\B[0&O-_A9&/["_'=JC;BWD?H/<
M?Q/RK\IH0T7.Q+*+N;\'LXM[R*-%FC2DR4'2J2Q+?/F^=3LD>XL=[A ?\F@1
M#QKBP2N(7[07!GM5ZP5=F^&X7XMXV! /7TU\0JZTKKIQAWL881@/@U&R@WO<
MKX4[:G!';\ ]LG5'>RRC) GC: ?YJ%M-[&_=?_;; R^5)1.:<%A@8' Z0 55
MW^>U8>3*78EWTN %ZYH%?@*!L@XXOI#2/!GVEFT^JM+_4$L#!!0    ( ,>
MJEC/!IUU'P0  "@/   8    >&PO=V]R:W-H965T<R]S:&5E=#0N>&ULK9=M
MCZ,V$(#_BD6KZD[J+C;O;)-(EVROK=1K5Q=M^]D+3F(=8&H[R?;?=PR$O."0
MK;3Y$##,C)^9,1[/9"_D-[5A3*/7LJC4U-EH73^XKLHVK*3J7M2L@C<K(4NJ
M82C7KJHEHWFC5!:NAW'DEI17SFS2/'N2LXG8ZH)7[$DBM2U+*O^=LT+LIPYQ
M#@^^\O5&FP?N;%+3-5LR_5P_21BYO96<EZQ27%1(LM74^40>%B0Q"HW$7YSM
MU<D],JZ\"/'-#'[+IPXV1*Q@F38F*%QV;,&*PE@"CG\ZHTX_IU$\O3]8_]PX
M#\Z\4,46HOB;YWHS=1('Y6Q%MX7^*O:_LLZAT-C+1*&:?[1O96/LH&RKM"@[
M92 H>=5>Z6L7B!,%L&-7\#H%[U(AN*+@=PI^XVA+UKCU2#6=3:38(VFDP9JY
M:6+3:(,WO#)I7&H);SGHZ=E"5#DDA>4([I0H>$XU#)8:+I MK9!8H3]K)JF)
MND(?GBNZS3G(?$1WZ'GYB#Y\_W'B:D Q!MVLFW;>3NM=F=9'7T2E-PK]#-/G
MY_HNN-#[X1W\F'NC!K]0>8]\\B/RL!=8>!9O5_='</P^K'YCSW__L-J"V4X6
MV"<S7_J#JFG&I@Y\RHK)'7-F/WQ'(OR3+1+O9.PL+D$?EV#,^NP/V)@4+9BR
M>=FJ1HVJV7YVLS@)?9*0B;L[=6 HE\1>&GMA+W?&%O9LX2C;0BAMTK(6(E<(
MDI;;(%L;X2DDP4E$T@O(H5SBA1[\[)!1#QF-0OXBA5*HEF+%M0TO&N(%01AY
M%W1#L2".0^S;X>(>+AZ%6\)NS*LUHE6.: Z[%5?:K/ =0^RU-M^#->_Q (9$
M09Q$X06T1<X+XRB]DO>DITY&J;O/$+@+B*T-,!E,?)=BWS\)5PMHD8L33-(K
M.4][P'0<4&^81+S*1,EL>.E@6B\)HLL%.90*?!Q>B1W!Q_J!1^%^-^OQA<&!
M@G6(2--7>Z([4V<!2N(@\8,+5IM@[,?$CZ_@GI0[,HH[9Q6#3P<![VU<,J0@
M<93X^!+7)A@&&.,KN-X1U[NY7UY;E9WJZ3YX%Z4)QH-H6@3#Q+\>S6.5(^-E
M[@G6I=I02#W4-VJ%?-?2]5[6SMT]%B\R7KWF5/$,55U.4'WPWNIX:RH^#3J^
MCR\WXDXL.1>+KB3F6,K(>"U[Y,76'#C>R!J^C37\/ZS'BD;&2UH352O6L$JE
M443\ ==-N7.R8SDCX_6LBZ*5;5B,[&PWY<[9CD6+C%>M!54;E/,=AW,F'%=R
MEA60W?Q&HI-!!O']Y?&J$XK/A ;G%O>DYRB97#>MF$*9V%:Z/;;W3_MV[U/3
MY%P\GYLVL.EECF;:'A(.Y6L.A^."K< D+$B(HFS;LG:@1=UT-B]"0Y_4W&Z@
ME672",#[E1#Z,# 3],WQ[#]02P,$%     @ QX"J6/H@B.0B!0  4"(  !@
M  !X;"]W;W)K<VAE971S+W-H965T-2YX;6RMFFUSHS80@/^*AG;:NYE+0+R3
MVIZYF)?V0SN9I&D_*T:.F0/D$W)\^?<G,,$&9 7?Z8L-]NZSDG:UK-:>[0G]
M4FTP9N!;D9?57-LPMKW1]6JUP06JKLD6E_R;-:$%8OR6/NO5EF*4-DI%KIN&
MX>H%RDIM,6L^NZ.+&=FQ/"OQ'075KB@0?;W%.=G/-:B]?7"?/6]8_8&^F&W1
M,W[ ['%[1_F=WE'2K,!EE9$24+R>:Y_A30*]6J&1^"_#^^KD&M13>2+D2WWS
M5SK7C'I$.,<K5B,0?WO!2YSG-8F/XVL+U3J;M>+I]1L];B;/)_.$*KPD^?]9
MRC9SS== BM=HE[-[LO\3MQ-R:MZ*Y%7S"O:MK*&!U:YBI&B5^0B*K#R\HV_M
M0IPH0.N,@MDJF$,%]XR"U2I84RW8K8(]4#"],PI.J^ ,+?AG%-Q6P1U:.#<D
MKU5HO*\?5K=Q38@86LPHV0-:2W-:?='XM]'F'LG*.A0?&.7?9ER/+9:D3'E@
MX13PJXKD68H8OWE@_(U''*L 68.'#:)X0_(4T^IW$'W=9>P5?'@LT2[-N/1'
M< 4>'T+PX=>/,YWQ0=5H?=4.X/8P //, /XE#.4"M:5<[8Y'+*:T&2I9?1$
M0CE@28J";X5SVI%<^W/*9\ZW$LK!'<K2JZP$2[3-Q%.)Y:Q[S'C*X#.)$"VS
M\KD2())W%I%GH6I'7P_3^00.D^MS=!X977B877B8#=@^ [[%SUE9#PK<HAR5
M*PP0 R%>70,+?@*F89HBCQ^8;L.L<^'+PC("W_4"?Z:_G/IX+&CT)<*Q!(26
M;P1N7RX:R]FV!RV[+Q8+1F99IN6Z UXR%KRR M,T3J;06U"K6U!+NJ"G87?8
M5]6D)952Z^?53;5%*SS7^ .IPO0%:XO??H&N\8=H:ZF$A0>8<[)2@>M"RQPX
M2*7-6"4L403KA8/=A8,M#8?^QKTD(*3<2P-")2Q4"8M4PF*5L,0>Q3WT8.#:
MXOS@= 'A2 /B'UY]YJ02/0-NG9'%*\>WH.4-LJK4PJ7>5 F+5,+BB<N1*#+:
M<Z?;N=.5NC/,7C)>7Z45+X]7.=_<J<BQ[G@F)C0=.Q@X5FKK4L>JA$4J8?'$
MY4@4&>TYUNL<ZTD=&Y7IH"KZ&]$N8ULB+WNC:5D&#""$@T?E<BPXK(J\B571
MF"2LB@0C,QV3EVL#N\G8KKPJ\KO5]'^D*GIW2:742Q^"*F&A/ZTJ4FDS5@E+
M%,%ZX1!TX1#\6%7T;D!(N9<&A$I8J!(6J83%*F%)<%%5!(UCF\+XN8.H,!Q:
MZ&G",AV^$7U_^&AM)65)5P 39UT!2YAV!7*F;QF6YPQ+&(%I>>*%)_T?^+,'
M4O'2PDD9;BDW?^DNFF@U4FHU5DI+5-'Z#C]V=*"\I3/IR"EVN11\:7952@N5
MTB*EM%@I+6EIDU/LL3,%Y:TIV=&S5>TE()?7AX8]W.Y*>TM*:9%26@S'C2_A
MDB2JS/;=>NPP07F+:=H1%([;&5=-9AWZ5VFK2"DM4DJ+)ZY(HLIJW[W'?A&4
M-XSD!U%;Z&M'4!5!SS2]T<-[+#FJBL8B9ZJBL:"X*A*,SG., -K#TZA \IVJ
MZ-BV@?*^S80#J7AIQ[T+<56DM)4ST6JDU&JLE):HHO4=?FSG0'D_9]*14^QR
M*?CBJD@E+51*BY328J6T!(Y[6,*J2#_YJ;S^KP5W+S]85B#':ZYH7'N<0 ]_
M7SC<,+)M?CU_(HR1HKG<8)1B6@OP[]>$L+>;^@?Y[D\DB^]02P,$%     @
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
M-8:\8T_B9\^[G<K7#$:F#>]_ .XB4YJ$2=('/A0<P]SQ*'EY6UK/HJV2>U'
M/%K\>'5/DR%QTBP+27\<.>12F+@C@Y1T_$K\&]?^+%J*BL'.]67<9]V3GLO:
M:1 ZUB9^UJZ#4 B;O*JPZR%1.'UV4'$6Q[B_NG#) 65'X=@HZBB;^"E[0'NO
M3I>#B)W0'7)>Z!UCDY<9N^"YXM#=%GGM1KWBL!=VDNYAJH[UMX.,LR@+!_"=
M.UZ[+1I9B)*.M(F7#YL:<>%%S* %7XFJLFF L04K$2'=!90-YRM-DR 9D-E0
M,(0E/PY&^IUVM$M?HEV/&U#]?@<.QH^/SS#)@"/Z"S^'("%QE!#:<V!Z=,P,
MR\Y5??JN4;TS:4YJVZ?M"?]-?:[=>WZ++^?-.7UGIOG;X#-3D!V-2KX$D\$[
M>\ZNFI/XYL;(;7V8O9 &UK[UY9JS@BLK +\OI33/-_8%[?\ALW\!4$L#!!0
M   ( ,> JE@TFT%WH04  .4-   8    >&PO=V]R:W-H965T<R]S:&5E=#@N
M>&ULE5=M3]PX$/XKHSVI:B6Z;]#"44!:Z%57G5HA:.\^>Y/)QD=BI[:SP+^_
M9^PDN[2[B/L"ZWCFF9=G7I*S>^ON?,D<Z*&NC#\?E2$TIY.)STJNE1_;A@UN
M"NMJ%7!TJXEO'*L\*M759#Z=OI_42IO1Q5E\=NTNSFP;*FWXVI%OZUJYQTNN
M[/WY:#;J']SH51GDP>3BK%$KON7PO;EV.$T&E%S7;+RVAAP7YZ/%[/3R2.2C
MP-^:[_W6;Y)(EM;>R>%S?CZ:BD-<<18$0>'?FJ^XJ@0(;OSH,$>#25'<_MVC
M?XJQ(Y:E\GQEJW]T'LKST<F(<BY46X4;>_\G=_&\$[S,5C[^I?LD.Y^.*&M]
ML'6G# ]J;=)_]=#E84OA9)_"O%.81[^3H>CE1Q74Q9FS]^1$&FCR(X8:M>&<
M-D+*;7"XU= +%XLLLZT)VJSHVE8ZT^S/)@' <CW).I#+!#+? W)(7ZP)I:<_
M3,[Y4_T)'!J\FO=>7<Z?!?RBW)@.9P<TG\Z/GL$['*(\C'B'>_"^VK [KJ1V
MM%M-&N+4-RKC\Q$JWK-;\^CBU6^S]],/SSAU-#AU]!SZ2U/_/,AL3)\-A9+)
M-MI(G=LB'J]LW2CS>! /"J;B48RU1K6Y#IR3-H&=KJG01IE,JXI\4('1<\%3
M!DK1U*2JBE3^+THQ/3><L?=H8 J68EI,H$)I5SU&6QNPQGH=?G6)E)<GX#@K
M!Y+I]>#6&U(FIX\P4R_9]1*']/K)O0#".)HOHF%*.27&?+S-2F56[!$A9<J7
M5&#X>,(,BWK:Y#I3D@%H:9O[,5VQB]%JDP9=G!@ ,J@<RK7/*NM;V,,#7%>(
M59NL:O.8Q=T)1&X:Y9* $.!RR##Z.Y3QW''?."#II@+VB@VB$'#<<Y,HBAY_
M-Y&P6T&/\2YJ>)XI*M6::<F,)-<ZB$SA;"TZGK>8WNG@+K^:!I6HEA62V\*E
M,5U7C*$G\Q=<@/&G%&^A]=GR(N(8HML9VN+_U6\G\]GQ!T\+8UI@W'!C72 D
M7.8LS:9O_QJ8>F3EB&6J_%H08_H&B91EU=?9OD!1S4*L#H\IT!VIWLV)XQ^M
M%N)K9;"E!%#24*L[)O9!UY$1"5YY;+8FU6 H52!5%-@]7:5*C&*D%AN10LAS
ME[=*JZ6NT"P=U*;@1% Z$5Z)Y7TZR4H.7_IFV\O1/G<<K]FTG0/\@*WO<<A;
M)PG9*,7TQ*X9TR(+0F#?ADA?);X74BI=&5J_E:;$V.ZN[1D/I6.F6O9)9Z?C
M_Z=Y@<Z2<AO&D8XM&?L::[[/0F\+C"TY1I7%=M@JKSA O]IU*BXIK#0S/RUN
M+TF#4\@O;K]#9!QOWTZ/#^B65[$2;H:<O/Z& 9S1_&3ZYI0^UXT3Q)ATV$YB
ML:UZS8^;F7) ]Z5&;$.I*6K:)?H0D0>I6"!T%8'9!42O5T87"!4XOL/K&".9
M:ROK^DKJ"9:(644C@RN=:F+%X 5JU>HT"[0GCL4KJ135 N;!M.3+(Y,K;8P$
MK0HLD$UGSMX== D4T_UVZ69LFI/_ ^8H.=9O#?%IK:I6A;X@-2[07Y%JW(*D
MR.6 \Q(N?S^ "I8CTS?U@)QU-!X?[:)Q(_F4/ERQ*6/F8@D[9;R,?I,]IG;F
M3,>WV-9ST58&!2M>ZP07 +>]8<2FSB5(;=;H'8M<Q9FUO9MB00=)FXP$X)5X
M^5"FJYAAQ/ZT%AU7<>V)2:?]73<1<&HJU7&!!X,6N+*-U$MKND&31IH48<20
M@2,:\-E+;Z5"*]H@HVNS>5]28BIM@[Y:]E9'/P%>6!UQ$NN #.(])FY+612M
MDZGJ\=J5J[W[\>DD]N-=[WR3K5=OK.15_,"(H]"$]!8^/!V^81;IU7TCGCZ
M,. 0LJ>*"ZA.Q\?O1B I?E2D0[!-?)%?VH#/@OBSQ'<8.Q' ?6&Q?KN#&!B^
M["[^ U!+ P04    " #'@*I8HH8G&/0#   ""0  &    'AL+W=O<FMS:&5E
M=',O<VAE970Y+GAM;)56T6[C-A#\%4(%>B^IY2B^ZR&U#21IB_8A19#TVF=:
M7$M$*%)'4G;\]YVE9$6Y<PSTQ9;(W>',<KC4<N_\<ZB)HGAIC VKK(ZQO<[S
M4-;4R#!S+5G,;)UO9,2KK_+0>I(J)34F+^;S3WDCM<W6RS3VX-=+UT6C+3UX
M$;JFD?YP2\;M5]EE=AQXU%4=>2!?+UM9T1/%+^V#QUL^HBC=D W:6>%IN\IN
M+J]O%QR? O[1M ^39\%*-LX]\\N?:I7-F1 9*B,C2/SMZ(Z,82#0^#I@9N.2
MG#A]/J+_GK1#RT8&NG/F7ZUBO<H^9T+15G8F/KK]'S3H^<AXI3,A_8I]'ULL
M,E%V(;IF2 :#1MO^7[X,=9@D?)Z_DU ,"47BW2^46/XJHUPOO=L+S]% XX<D
M-66#G+:\*4_18U8C+ZX?=7@.0EHEOMB2?,0V1DUAF4> <TA>#D"W/5#Q#M"5
MN'<VUD'\9A6IM_DY2(W,BB.SV^(LX+WT,W%U>2&*>;$X@W<U*KU*>%?OX/WE
MXFE=?=KB=!H?BNO0RI)6&5P?R.\H6__XP^6G^2]G2"U&4HMSZ/^G_.>!BIGX
MNR9QYYI6VH.@ETA6!5%Z4CH*V#]B%O;50;BMB.2;@"$9A?0T^ QG$N:+M;;"
M=1XF\\\4$>7$3GKM.J E=/ 3RFE;B4T70",$T7J-<&T.0O<KR0Z C@\<1A3@
M_>$MP5I"-@"AVD8OTPD%L8&O1UDFH .K=X!3^8;I>ZWV%"#/HJ ZDA)/46+?
MOU\<47)C-$Z. H"0!NU)@HU HT.O*%UGXU"B1A[$AB">1&=QX%)'V1@Z+KKM
M8N>)E] )%[1YY5=(#'/G4!-)D-M(B[:'!A<_(&TG33>6(:%JBV0M#5<)19E,
M]?M%/BG'HM%Y72*07EKRFK#D6[V-0RV<#T)#TJC-4TEZ)UD(XY2U]!6E_68<
M&RC5I>%@05\[X&.*$8X2F4Z+4P7+,LM^ZXP+X=MZ0T#0BCQON>V:#9@C=8N.
MG$A9M%%VI+9LJND*X0*SI>D43[!R0[:*=:H#KH84"_<H.JT*UFYEB$)U=)'2
M!T(?V+&T2YYFOD,->R=-"XS LO,>"H7<:*/C@6O0P@^\LH-_JK1G;^5*$]Q$
M\Q$!#K*NT>7K?H:>U3C!ER;NK\'0O;M_"BV5>HO92;U2C4;'S,3-"?4;:=A\
MH3_A:7,5"K<5LD*70572<1H]NJ^)<=FKQ]T@U?N? R? >VV,L"[B3/"PVQ%V
M?G:J&>:3>PG5K-+MRVT$7/LK:AP=+_B;_EY[#>^_#G ;5& - VR1.I_]_#%#
MET@W;O\279MNN8V+V+KT6.,CA3P'8'[KX-3AA1<8/WO6_P%02P,$%     @
MQX"J6!EI;(B$!P  VA(  !D   !X;"]W;W)K<VAE971S+W-H965T,3 N>&UL
MK5AA<^.V$?TK&*5S_:)(LNPD-W>V9^ZNS>1FDO8F29O/(+D248, #P EJ[^^
M;Q<D1=JR9]KI%UN"@-VW^_8MEKP]^O 0:Z*D'AOKXMVB3JE]MU['LJ9&QY5O
MR>&7G0^-3O@:]NO8!M*5'&KL>KO9?+]NM'&+^UM9^Q+N;WV7K''T):C8-8T.
MIX]D_?%N<;48%GXU^SKQPOK^MM5[^HW2/]HO =_6HY7*-.2B\4X%VMTM/ER]
M^WC#^V7#/PT=X^2SXD@*[Q_XR^?J;K%A0&2I3&Q!X]^!/I&U; @POO8V%Z-+
M/CC]/%C_46)'+(6.],G;/TR5ZKO%VX6J:*<[FW[UQY^HC^<[ME=Z&^6O.N:]
MUYN%*KN8?-,?!H+&N/Q?/_9YF!QX^]*!;7]@*[BS(T'Y%YWT_6WP1Q5X-ZSQ
M!PE53@.<<4S*;RG@5X-SZ?Z3;QJ3D.44E7:5^N1=,FY/KC04;]<)+GCCNNS-
M?<SFMB^8NU:_P$ =U5]=1=7\_!K01GS; =_'[:L&?]%AI:ZOEFJ[V=Z\8N]Z
MC/=:[%V_8.]O/EV.*Q^[N7R,I?$NMKJDNP5J/U(XT.+^S3=7WV_>OP+J9@1U
M\YKU_YZ$U\U=K]3O-<%*TVIW4B8NU2[X1B6H224O_Y?*N(.W!ZKP05F3S%ZS
M3'B]M%T%]XK<P03O&)>VJK3:-!E?"7P!>E*5B6V'A/(IE>#3L5*PUW<ADO([
M5701Z&)<J3]J8TF9!#S8EE3K8S0%EG3"42P.\"@F75@3:[$(=1F(#]L:W[G$
M-JW1A0'D$[22:K2&V$+C?+0<$I?&32:C&V)*M0>P0!8F*SYB:0_ ;? E$>_
M[D8[]",.F['"(>/PK7'<1E(M>(%GOP\X.T/&Z8Y=6<^]HW6J8VVP##<'(_VL
MUCD+!9&#PPJ$'(VULE;K XPJCCH8@-/5@3B=M-MQG#ZGNJ?WSU'MC-,H%0[#
M1Y-9M.9K9RKD:,GY01(E$/3R(#3C6U"E1HYW:,MQ7C"!2K]WYM\$MB>0S:YG
M#TN%9N8D%]HI-'LVPQ[$)FQ[0 P*AIQO3,D84!(E+,J9$H<*H0%YLB?5D(Y=
M "&2 _D%\$-F*%)*XHS.8%;JLT/S18+0$S.OA)@?8+#VOI(J1=WP+P#50O0H
M#"Y,@9?ASIEVH#^RNT8_$->@5!WV"-<QHH9E'\QE+I$(O@Y$/ZT.PHMQ0.28
M,OBGQ_[+F1]>S@6W!SM8)%G*R1J*<@=E^0!.?F2.IJU@.26> 4S31(\42H,R
MB0;D[0QRG-2_NJJ/#SN&?!$B('')YH*)#Z(JZ%'8'719="D+M:=[->]+0P/!
M?YAB%QWB"0F#0,H_]YI;CI8L&,FR6R+?>P]*<C$6E(XL!"T5CAV<4 D8VF(.
M!6V?F&5FMYX)KTP=LBHQ-/K$)31) U>8#\1U:<%CKL&C_-$Q%U7%B6>=/NDH
MHN89"7.ML 'HA<0)8H1'6"I.J ;I?P;"R]<X)-P7?TX2PHDH2UY&&78<G$@
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
M_BLC5ZWNI J#(4V: %*3NU/S(;THM'>?%WN,MUWONK/C /_^9M<.A99P5;_
MOLP\\\S;CJ=K1U]\A<BPJ8WULZ1B;B[3U.<5ULH/7(-6;DI'M6+9TBKU#:$J
MHE)MTFPX?)/62MMD/HUG]S2?NI:-MGA/X-NZ5K2]1N/6LV24/!T\Z%7%X2"=
M3QNUP@7RI^:>9)?N4 I=H_7:62 L9\F[T>7U),A'@7\TKOW>&H(G2^>^A,UM
M,4N&@1 :S#D@*/E[Q!LT)@ )C:\]9K(S&13WUT_H?T7?Q9>E\GCCS+^ZX&J6
M7"108*E:PP]N_1Y[?\X"7NZ,C[^P[F1'XP3RUK.K>V5A4&O;_:M-'X<]A8OA
M,PI9KY!%WIVAR/(/Q6H^);<&"M*"%A;1U:@MY+0-25DPR:T6/9[?VMS5"!_5
M!OTT94$,YVG>:U]WVMDSVF.X<Y8K#W_: HM#_528[.AD3W2NLY. =XH&,!Z]
MAFR834[@C7?NC2/>^!F\#XZ/^]6I38ZKA4ZX](W*<99(J7ND1TSFKUZ,W@RO
M3I":[$A-3J'_;\Q/:Y\-X&.%<./J1MGMJQ<7V>C\R@.6)<8*!U8;("5^PQH)
M034-N8V6 D:SA2P;O'T)RA82X;"2M@86N%*39_C:*F(D<&5,0"^7C5]+__FF
MPS?;XP1*+)"4 =UY%UD@MV3]SHA #65!KEU5$3=*;5&1!R54?;O\+$: '>!&
M2;6KV+G+;=2^M4+-BH4'?$3;(BPD+SI'^"UPR(97MP^+N!I=_3Z .V7E49'G
M@Z%P$@OK6-QAG>M&(B'++:CBLS18$/%B0+$\(*TI@JO2TN('* A1(RTV\TK9
M%09F@4HGXD.<Y'FD2%-V)&&TRN91P=E"1_HBQ-_B-8 /#CPK;D.&Y,[H6G/G
M:*4D?4M$*^XSAI:"\' )U4.,4S$OM13,RG<YZNT<FO$!]!C:C^DYD=.U-D9H
M-EKR)G@+;!CKI=3.Z*SKWGVD\Y\IH$ 6?[5\",,$.E%!CXJT:Y^LJ)8K1Y*?
MT"6:JXAO0M,PY,9Y"2%(8K6+&?@[9Q=<ZQ^F\P/^H+OBRELB*27IL58R1]_;
M#Y*'MK?1L3U_FY8:YX51:#O[;)4$K1]BU:?]2 D-CKU8Z=[$J)%6<2YZ*=K6
M<C<\=J>[T?NNFSC?Q+NY+4_V2DN6#):B.AR<GR5 W2SL-NR:.'^6CF6:Q64E
MGP](04#N2R>/=+\)!G8?)//_ %!+ P04    " #'@*I8"1$>HNT"  !"!@
M&0   'AL+W=O<FMS:&5E=',O<VAE970Q,RYX;6R%54UOVS ,O>=7$%XQ;( ;
M.[9C.UD2H!\KUD.'HL7:LV(SL5!;RB2E:??K1\F.EP)M=HDID>_ID1*9V4ZJ
M)UTA&GAI:J'G7F7,9AH$NJBP87HH-RC(LY*J88:6:AWHC4)6.E!3!U$8ID'#
MN/ 6,[=WJQ8SN34U%WBK0&^;AJG7<ZSE;NZ-O/W&'5]7QFX$B]F&K?$>S:_-
MK:)5T+.4O$&AN12@<#7WSD;3\\3&NX 'CCM]8(/-9"GEDUU<EW,OM(*PQL)8
M!D:?9[S NK9$).-WQ^GU1UK@H;UGOW*Y4RY+IO%"UH^\--7<RSTH<<6VM;F3
MNQ_8Y3.V?(6LM?N%71L[BCTHMMK(I@.3@H:+]LM>NCH< /+P T#4 2*GNSW(
MJ;QDABUF2NY V6ABLX9+U:%)'!?V4NZ-(B\GG%E<BV<41BJ.>A88(K3;0=&!
MSUMP] $XAALI3*7ANRBQ?(L/2$BO)MJK.8^.$MXP-81XY$,41LD1OKC/+G9\
M\0=\/Z5Y/Z\6EKP/LXTPU1M6X-RCEZY1/:.W^/QIE(;?CHA*>E'),?;_E?PH
M^'UIZ1 .2($I!&V8P1*8 5,A4.NA KF"0FH#4H&@=J<>KOD?MJP1GEF]1;_U
M+I&+-3UL@XK>&W$L7QW'BBMM3KGP.XLZ'!HTE2R'<+9O:GL&/Y32GE^2&$V.
MDA=.%B>/AI6L29B>#NC:BZJ_=[C$ ILE">YVXL$=V]&C)T6<U7 "D9_$D9].
M1L[.L]S/T\G@D=J?])UNE"Q0:QN5QGZ6AF3%6>)GD_'@B@M.S5+"6LK2AL23
MT(_H3*(;)?XDGPP.*NG#6DEBROPH3_TT&Y.5I[F?CN/! Y6,F78TN6O0\&6<
MA'X8AE^M-7+66S9;]1-(_2QIV4Z(+XXRRP?O/:S@H*\;5&LWO31=TU:8ML7[
MW7Y GK5SX5]X.UVIQ&LN--2X(F@XS,8>J'9BM0LC-VY*+*6AF>/,BH8\*AM
M_I6D7NH6]H#^;V/Q%U!+ P04    " #'@*I83T7R].T$  #L"@  &0   'AL
M+W=O<FMS:&5E=',O<VAE970Q-"YX;6R55EUOVS@0?/>O(-RBB %>+)&B**6)
M@21M<0&NO: ?=\^T1-M")5$EZ3CY]S>4+"=MD[3WD&A)[<[NS@XMGNZ,_>HV
M6GMRV]2M.YMNO.].YG-7;'2CW+'I=(LW*V,;Y;&TZ[GKK%9E']34<Q9%Z;Q1
M53M=G/9[UW9Q:K:^KEI];8G;-HVR=Q>Z-KNS:3P=-SY6ZXT/&_/%::?6^I/V
M7[IKB]7\@%)6C6Y=95IB]>IL>AZ?7"3!OW?XI]([]\ FH9.E,5_#XJH\FT:A
M(%WKP@<$A<>-OM1U'8!0QK<]YO20,@0^M$?T=WWOZ&6IG+XT];]5Z3=GTVQ*
M2KU2V]I_-+L_];X?$? *4[O^/]D-OC&<BZWSIMD'HX*F:H>GNMWS\" @BYX(
M8/L UM<]).JK?*.\6IQ:LR,V> ,M&'VK?32*J]HPE$_>XFV%.+_XI->@V)./
MNC/65^WZ=.X!&U[.BSW$Q0#!GH#@Y+UI_<:1MVVIR^_CYRCG4!,;:[I@SP*^
M5_:8\)@2%K'D&3Q^Z)'W>/P)O _&:_=87T-8\GA8. XGKE.%/IM"[T[;&SU=
MO'H1I]'K9XI*#D4ESZ'_'O'/0\AC,J)<M</YA-!?O<A8S%Y_WFAR:9I.M7<$
M1]@J<$"JEOB=(<NM Y1SQ WACB@'*7MMH3!=DN4=J;#965-N"YQY$L!6RGG=
M:CL& :RHMR50+<Z5=Y1 B^4?H0Y C-Z ;DO2*>L'RQ46)[51Q0:9?LB@G-/-
MLKXC^MNVZOH</^526YP(]%D,6>'@ WDCXH_IO,'Y(*@)OSK%YN!U_)"PT.Z8
M)WAZE +"*E,&"C#XUJ.AJB=I96K\C+F3R;N1C?.QZ+>'HK^T"EZ%"F&7QF*^
M,&&USM15&;8GGS=6Z^_.#8'J4>$H^Y/)A]"=JM'22Y)2R3C-1 ([IC'+*6>2
M1%A)['(:9_'DC4:Q136TQ').>1;C29,L(2*)" ="$HG)*)E!%($[3&%5>7)4
M&^=FY(AG.5(D,T0PFK(8>8[2E(J(SQ!<UR$D<*M*J*5R/J#<:*)O\:%P*#<*
M 1E/:19%LWMK<@4>06<_3-/HWH]E-$GS_6/R%PH@2XTAZ-')J]N>@:-,)C3C
MR6QRJ;K*JWK(5U9^"TPT2!ECA&<T2SEPT7Z4W?<:E.4QM?.B,-N@=S"EJQNU
MK#4E+8@&M@2Q7!"1,RHR!@R!FCB5L43E-T QMM)N<!?()BG/,TQ#Q#EE,DP#
M4TI2FDHQN;:!77]'25>KD!]T'40]0(!CD=,<F9 W%Q@AAQ6Q"%7 BBF7R))G
MD[^A1[OOH.<,K4:21@F_MR8O">J1*%UR_DMQ\>_%%22$$<4<=B89S6/62RN#
MZ'+\B1^D!9>4IX1'2,8(%FF"14HCSGXMK@2C%E$\(S%4QF,1M,(XR,C2_Z$N
M@4$++F?WUJ/J2B*,,MT_GE67Y!*\RR?4Q2'A*$V!*#%U >)CG*4X_WU]"7 L
MJ4@%9B! 0-[+)9:0J4Q^UA=Z2@.A,221<(RD/X602Y[17+#?TU?*!)4B!T08
MF41NZ$M&-!5IT%>>!M:CG_6%^@0\D_C>@KXXIRGTQ1+YV,=O_N &TFB[[N]9
MCO1L#)>1P^[A*G<^W&#NW8=[(*2ZKEI':KU":'0LQ12_]?W=:EAXT_7WF:7Q
M^!;TY@;746V# ]ZO#+[W^T5(<+C@+OX#4$L#!!0    ( ,> JEA7T=:-*A$
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
MHF Z2]V7#3*47QD?VX:RM.*TX^/ 88L\"AN[3;4D2Z-I:&-2GB79L32EL.,
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
M; C ^;4Q_C0("PR?+8M_ %!+ P04    " #'@*I8L#]F!Y@"  "C!0  &0
M 'AL+W=O<FMS:&5E=',O<VAE970Q-RYX;6Q]E-]/VS 0Q]_[5U@9FH84R,\F
M:==&HC T'I 0;/#L)M?$(K$SVZ'LO]_9:;,BE;XD9_ONX^_9OEMLA7Q5-8 F
M[VW#U=*IM>[FGJ>*&EJJ+D4''%<V0K94XU!6GNHDT-(&M8T7^G[BM91Q)U_8
MN0>9+T2O&\;A01+5MRV5?U?0B.W2"9S]Q".K:FTFO'S1T0J>0/_N'B2.O)%2
MLA:X8H(3"9NE<Q7,5['QMP[/#+;JP"8FD[40KV9P5RX=WPB"!@IM"!1_;W -
M36- *.//CNF,6YK 0WM/O[6Y8RYKJN!:-"^LU/72R1Q2PH;VC7X4VY^PRV=J
M>(5HE/V2[> ;Q0XI>J5%NPM&!2WCPY^^[\[A("#S/PD(=P&AU3UL9%7>4$WS
MA11;(HTWTHQA4[71*(YQ<RE/6N(JPSB=W_$WX%I(!FI.#@;DVR^Z;D"=+SR-
MVQAGK]@A5P,R_ 09D7O!=:W(#UY"^3'>0WFCQG"O<16>!-Y3>4FBP"6A'\8G
M>-&8<V1YT2>\(3/O"1]XV:-U+,6!$!\GF$J9JXX6L'2P%!3(-W#RKU^"Q/]^
M0E\\ZHM/T0_OY)BTD\''I>$)%O5XA.0&"FC7(/<ST>21;O%5:9",-N2,A&X<
MA6XR"ZR=I9F;);/)"];7!>,7G10%*&6\DLA-$Q^M*(W==#:=W#+.\#66I!*B
M-"[1S'=#W!-Q0>S.LMGD(#V75%(@*77#+'&3=(I6EF1N,HTFS[3IJ1YJWZ:!
M;W(:^Z[O^^?&"JSUD<:QBYV1Q$WC@7:&O"A,#8\<NQCOH'!:D)5M#XH4HN=Z
MJ*%Q=NQ 5T/A_7<?VA<><<6X(@UL,-2_3*<.D4-+& 9:=+8,UT)C45NSQBX*
MTCC@^D8(O1^8#<:^G/\#4$L#!!0    ( ,> JEC0A_K48P0  ,4)   9
M>&PO=V]R:W-H965T<R]S:&5E=#$X+GAM;)5676_;-A1]]Z\@M&*( 2*F2)&4
MLL1 DK98@74+FG9[IB7:%BJ)KDCGX]_O4+*==$W2[,'6)<5[[KWG'E(\O77]
M5[^V-I"[MNG\6;(.87,RF_ER;5OCC]W&=GBS='UK H;]:N8WO375X-0V,\Z8
MFK6F[I+YZ3!WU<]/W38T=6>O>N*W;6OZ^PO;N-NS)$WV$Y_JU3K$B=G\=&-6
M]MJ&+YNK'J/9 :6J6]OYVG6DM\NSY#P]N<CB^F'!W[6]]8]L$BM9./<U#CY4
M9PF+"=G&EB$B&#QN[*5MF@B$-+[M,)-#R.CXV-ZCOQ]J1RT+X^VE:_ZIJ[ ^
M2_*$5'9IMDWXY&Y_M[MZ9,0K7>.'?W([KE5%0LJM#Z[=.2.#MN[&I[G;\?#(
M(6?/./"= Q_R'@,-6;XUP<Q/>W=+^K@::-$82AV\D5S=Q:9<AQYO:_B%^;5=
M@>) /MF-ZT/=K4[(-1I?;1M+W)+\\)HL[@^31Y_-HK%^>CH+R"3BS<I=U(LQ
M*G\FJB ?71?6GKSK*EM][S]#!8<R^+Z,"_XBX$?3'Q.14L(9SU[ $P=:Q( G
MGL$;*YOMJ?!/E3@B9$\CQ,UTXC>FM&<)=HNW_8U-YK_^DBKVVPOY98?\LI?0
MYZ_MT5-YOXS\WOA@.]N3<^]MNVCNR;MOVWHS1/C2F:9QI0FV(I>N1SB8L#KO
MFKJ*TY//Z][:[[I+T)MR?6C.R>1/'#7>@%3RABBJN:"YS&"G-.4%%5P3AI'&
MK*!IGD[>6A!8UF;8Q;P05.0IGC3+,R(S1@00,B8G>QYP8"&OR,.F=\L:.FV<
M]U-R)/("(;(I/#A5/$6<(Z6H9&(*YZ:)+J:KB*FPT6H?(LJ-)?8.)Z!'NBPZ
MY$+1G+'I@S7YT 6+%@=2=Z5K[;".YS13Q>XQ^0,)D(7%&6KWBX*Y&Q@XRG5&
M<Y%-)Y=F4P?3C/&J.FR!B0(IYYR(G.9* !?EL_RA5H,F!7\R.2]+M^V"QSE9
MVOHFJI>2#D0#6X-8(8DL.)4Y!X9$3H+J5"/S&Z"XOK9^7"X135-1Y.B&3 O*
M=>P&NI0IJK2<7/61W7!/R:8Q,3[HLGM]C!#@6!:T0"3$+21:*& QSI %K)0*
MC2A%/ODKK"&SL8*!,Y3*-&69>+ F;PCRT4A="_%3<8GOQ14EA!:E G:N.2U2
M/D@KA^@*_.1_I(4E2B@B&()Q@H'*,%"4"?YS<65HM63IE*10F4AEU H7("-7
M_T-=$HV60D\?K"?5E3&T4NT>+ZI+"PW>]3/J$I P4PJ(&EV7(#[%7DJ+U^M+
M@F--I9+H@00!Q2"75$.F.OM17ZA)14)32"(3:,FP"R&7(J>%Y*_3E^*2:ED
M(K9,(S;TI1E54D5]%2JRSG[4%_*36)FE#Q;T)015T!?/]%/G\NS1I[6U_6JX
M0'@RL#%^90^SASO*^?AI?E@^7G @U57=>=+8)5S9L98)Z<=+PS@(;C-\J!<N
MX+,_F&O<LVP?%^#]TKFP'\0 AYO;_%]02P,$%     @ QX"J6(1%43V[!
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
M.'/K#;=ZP]X^O:K4U%W)QQ.RRE,UEJ;%G(COZVS5C*RN H16+I2RD$,<&15
MG_W2"H16BU,:!-Q[KLFC;0DBM 0?TEJ*0E0NI:CG"P5,CQDL.5*PO8K%VXK%
MPR>"V-$[@$7<-]X-VTY-&$%$F3$\HJD,%$H]C23>3TT%G?NN#(@9LZ8]EUT(
M 0L,M7@Z0^7N$!A%Y3[A5#,@I"UCJ<'A-G.. EVH74FG+(HIF"WM,O0AXAXU
MQ:/)#14/6CSTB,_S1G(S_EW.%>!FM6RJ<"_(^Q_JQTWM?N&[J+OR/+,"O28)
MGMM0[1KM*,YV'PLI5%Q)LF)6+H53)^O7V6N2X'D,U:G)CN)H-TU7F4QS(IH&
MG6=R73W3J#:\<1\ 3,$.QF.!%UC=^C4@CVK*H_\#YE&;\_PH5#._R3T.0Q[Q
MD <FX^-9#ZV*1CWZ\ZQ';>[B "&S4,=AJ*8SA?O6('<D+-P7K7F/O@+P49OX
M8LKC.++Z@\,P -7VL5F%(Z'A?A4T\E&<^?Z6"U&1R[H6TMW]H_ZQKM<DP9,8
M*E)3&L4QK9&WO,D?R7NT;8\$6%U5CADM.5:T_<4;#7^ PQ_*N6 3':6*_<#\
MV>LP;)8\J+D.@"<S5*Q&/\#1KX]TP:8XB/W(A#V'&?-":]$#3V:H6(UZT(=Z
MAW,NV/#&  (P$=]A1Z.847/6PU,;*EV3'N"D-Y!RH9_^^DT2/+>AVC7] 4Y_
M!U NV$1GZ>PU2? \ANK4O <X[QU*N6"3&HNB@)F";3-+\&N@'&B4 QSEC@*X
MX&"]&+@%.0X[U<NY9S(.GO/0FFC2 YST#L%;<"SE<1I#:$UB#D.?06R.@@F>
MU%#1&NP ![M!> LVRE$:<QI9'<%A"&&S#&M6X37(#S3Y 4Y^?7@+]N*;-<CU
MFB1X$@-%,DUG#*>S:5FM2C5SB:>/@,[/4D>"JN[CU3&C)<>*ME\_#7P,!S[\
M<YZ-<>8;TF^2X!D,5:@IC^&4UX>TS"8V[ELR;2,( M]4^AI0QW:^S/9!W>$\
MR_I)KM\DP1,:*EB3',-);B#%,AO=3B,61)Y5 8<A9Q%GH5F'UR ]IDF/X:1W
M -$RF]X@\H/85.Q8WO-X9*YDXOD,U:M!C^&@=RC9,IO1K"9V?%(-&3>_/^$)
M#16L*8[A%'<4LF4VO5G5Z#5)\$R'5D*C'</1[A">9?WK=OTF"9[(4*&:WEC_
MY]47,RRS>8UZX%%F,JS3,/0";O7TU\ [7^.=C^-='\-V[OL[0)00WQ3L,.2<
M4\\W?[K@";U4\'AG(]Q25'?MAL*:M+UYLX-L>W6[:?&RW:IG7+^B9]/-UD,=
M9K,3\E-:W65%37)QJT)Z[T+5J-5F<^'F1):K=KO=32EEN6P/%R*=BZHQ4/=O
MRU(^G30/V&[QG/P'4$L#!!0    ( ,> JEA#0V,K"P,  (<0   -    >&PO
M<W1Y;&5S+GAM;-U8;6^;,!#^*XA.4RM-)82%A35$VI J3=JF2NV'?:N<8(@E
M8S-CNJ2_?CY,R$M]5=</6SNB!OL>WW./[XX8==;H#:?7*TJUMZZX:%)_I77]
M,0B:Y8I6I#F7-14&*:2JB#93509-K2C)&W"J># >C>*@(DSX\YEHJ\M*-]Y2
MMD*G?C28/'O[DJ=^&+_W/4N7R9RF_NWIVY^MU!=O/'L_>7=R,KH]NSBVGW;
MF1\X22=/(#T?X;P&PZCC)U$_PMP1!WURYK-"BL,<@<%$)A7U[@A/_8QPME ,
MO I2,;ZQYC$8EI)+Y6E3'",E!$MS;^'0SJ!N/4_%A%1=;!O!?B_ZY4? =@8"
M&>>#P+%O#?-93;2F2ER:2;>X,SZ O'Y\LZF-PE*133B>^#N'[F:"+*3*J1K"
MA/[6-)]Q6H <Q<H5W+6L P"UEI49Y(R44I!.P]:C'QC:)>7\&IKZ1W' O2[V
M:CJ"BHIA: 3U0TMC)\"_SV:Y]VB39]%Z-;N3^G-K=B.Z.;0*O5*T8.MNOBZ&
M^!A[B+.3NN:;3YR5HJ)V[T\..)^1K9^WDHK=FVC0*4MCH,KW[JC2;+EO^:5(
M?4/7>MM-ZP+7/'Z%FO]NGDLJJ")\7[1I_9><Y6<KCC[\*\G=C\JQ8*?&_J!Z
MZ2(GKT%D_")%!OT/^MZI<7!F#%8/SN;4_PYO 7P7U%NTC&LF^MF*Y3D5#XX.
M0Z_)PKQE'?";]3DM2,OUS0"F_F[\C>:LK9)AU14DHE^U&W^%[87Q\&)@8C&1
MTS7-LWZJRD4W],S 1.TO<#A&+KO+C6 ^%G,C@&%Q, 68C_7"XOQ/^YFB^[$8
MIFWJ1*:HSQ3UL5XN).L^6!RW3V(N]TZ3)(KB&,MHECD59%C>XAC^W&R8-O#
MXD"D/\LU7FV\0Q[O ZRFCW4(ME.\$[&=XKD&Q)TW\$@2=[6Q.."!50'K'8CO
MC@,]Y?:)(J@JI@U[@G$D23 $>M'=HW&,9">&C[L^V%,214GB1@!S*X@B#(&G
M$4<P!: !0Z*H.P>/SJ-@>TX%NW\]S'\#4$L#!!0    ( ,> JEB7BKL<P
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
M @  $0              @ &O    9&]C4')O<',O8V]R92YX;6Q02P$"% ,4
M    " #'@*I8F5R<(Q &  "<)P  $P              @ '- 0  >&PO=&AE
M;64O=&AE;64Q+GAM;%!+ 0(4 Q0    ( ,> JEB'&E4[S 4  ,<>   8
M          " @0X(  !X;"]W;W)K<VAE971S+W-H965T,2YX;6Q02P$"% ,4
M    " #'@*I8,MC1N<$&  "=&P  &               @($0#@  >&PO=V]R
M:W-H965T<R]S:&5E=#(N>&UL4$L! A0#%     @ QX"J6$0)WZ?, @  8 D
M !@              ("!!Q4  'AL+W=O<FMS:&5E=',O<VAE970S+GAM;%!+
M 0(4 Q0    ( ,> JEC/!IUU'P0  "@/   8              " @0D8  !X
M;"]W;W)K<VAE971S+W-H965T-"YX;6Q02P$"% ,4    " #'@*I8^B"(Y"(%
M  !0(@  &               @(%>'   >&PO=V]R:W-H965T<R]S:&5E=#4N
M>&UL4$L! A0#%     @ QX"J6'&RL#!G @   @8  !@              ("!
MMB$  'AL+W=O<FMS:&5E=',O<VAE970V+GAM;%!+ 0(4 Q0    ( ,> JECN
MXPQT^P4  !L9   8              " @5,D  !X;"]W;W)K<VAE971S+W-H
M965T-RYX;6Q02P$"% ,4    " #'@*I8-)M!=Z$%  #E#0  &
M    @(&$*@  >&PO=V]R:W-H965T<R]S:&5E=#@N>&UL4$L! A0#%     @
MQX"J6**&)QCT P   @D  !@              ("!6S   'AL+W=O<FMS:&5E
M=',O<VAE970Y+GAM;%!+ 0(4 Q0    ( ,> JE@9:6R(A <  -H2   9
M          " @84T  !X;"]W;W)K<VAE971S+W-H965T,3 N>&UL4$L! A0#
M%     @ QX"J6'SL,Z4E!P  T1   !D              ("!0#P  'AL+W=O
M<FMS:&5E=',O<VAE970Q,2YX;6Q02P$"% ,4    " #'@*I8*G,8ZYX#  "<
M"   &0              @(&<0P  >&PO=V]R:W-H965T<R]S:&5E=#$R+GAM
M;%!+ 0(4 Q0    ( ,> JE@)$1ZB[0(  $(&   9              " @7%'
M  !X;"]W;W)K<VAE971S+W-H965T,3,N>&UL4$L! A0#%     @ QX"J6$]%
M\O3M!   [ H  !D              ("!E4H  'AL+W=O<FMS:&5E=',O<VAE
M970Q-"YX;6Q02P$"% ,4    " #'@*I85]'6C2H1   F,@  &0
M    @(&Y3P  >&PO=V]R:W-H965T<R]S:&5E=#$U+GAM;%!+ 0(4 Q0    (
M ,> JEB?N!ZX2P,  ,((   9              " @1IA  !X;"]W;W)K<VAE
M971S+W-H965T,38N>&UL4$L! A0#%     @ QX"J6+ _9@>8 @  HP4  !D
M             ("!G&0  'AL+W=O<FMS:&5E=',O<VAE970Q-RYX;6Q02P$"
M% ,4    " #'@*I8T(?ZU&,$  #%"0  &0              @(%K9P  >&PO
M=V]R:W-H965T<R]S:&5E=#$X+GAM;%!+ 0(4 Q0    ( ,> JEB$15$]NP0
M (D:   9              " @05L  !X;"]W;W)K<VAE971S+W-H965T,3DN
M>&UL4$L! A0#%     @ QX"J6'IO9<ZS @  # @  !D              ("!
M]W   'AL+W=O<FMS:&5E=',O<VAE970R,"YX;6Q02P$"% ,4    " #'@*I8
M7QS7\M,&  #N*0  &0              @('A<P  >&PO=V]R:W-H965T<R]S
M:&5E=#(Q+GAM;%!+ 0(4 Q0    ( ,> JEA#0V,K"P,  (<0   -
M      "  >MZ  !X;"]S='EL97,N>&UL4$L! A0#%     @ QX"J6)>*NQS
M    $P(   L              ( !(7X  %]R96QS+RYR96QS4$L! A0#%
M  @ QX"J6/\E@3Z/ @  U X   \              ( !"G\  'AL+W=O<FMB
M;V]K+GAM;%!+ 0(4 Q0    ( ,> JECNS4@[)@$  &8-   :
M  "  <:!  !X;"]?<F5L<R]W;W)K8F]O:RYX;6PN<F5L<U!+ 0(4 Q0    (
M ,> JECUX!!.90$  'L.   3              "  22#  !;0V]N=&5N=%]4
?>7!E<UTN>&UL4$L%!@     = !T P@<  +J$      $!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<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>35
<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>37
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.24.1.1.u2</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>67</ContextCount>
  <ElementCount>129</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>14</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>3</UnitCount>
  <MyReports>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>000010 - Document - Document and Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation</Role>
      <ShortName>Document and Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>000020 - Statement - Condensed Consolidated Balance Sheets (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited</Role>
      <ShortName>Condensed Consolidated Balance Sheets (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>000030 - Statement - Condensed Consolidated Balance Sheets (Unaudited) - Parenthetical</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical</Role>
      <ShortName>Condensed Consolidated Balance Sheets (Unaudited) - Parenthetical</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>000040 - Statement - Condensed Consolidated Statements of Operations (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited</Role>
      <ShortName>Condensed Consolidated Statements of Operations (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>000050 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited</Role>
      <ShortName>Condensed Consolidated Statements of Shareholders' Equity (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>000060 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited) - Parenthetical</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnauditedParenthetical</Role>
      <ShortName>Condensed Consolidated Statements of Shareholders' Equity (Unaudited) - Parenthetical</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>000070 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited</Role>
      <ShortName>Condensed Consolidated Statements of Cash Flows (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>000080 - Disclosure - Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPolicies</Role>
      <ShortName>Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>000090 - Disclosure - Risks and Uncertainties</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_DisclosureRisksAndUncertainties</Role>
      <ShortName>Risks and Uncertainties</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>000100 - Disclosure - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_DisclosureCommitmentsAndContingencies</Role>
      <ShortName>Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>000110 - Disclosure - Revenue</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenue</Role>
      <ShortName>Revenue</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>000120 - Disclosure - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_DisclosureIncomeTaxes</Role>
      <ShortName>Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>000130 - Disclosure - Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_DisclosureInventories</Role>
      <ShortName>Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>000140 - Disclosure - Segment Reporting</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReporting</Role>
      <ShortName>Segment Reporting</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>000150 - Disclosure - Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPoliciesPolicies</Role>
      <ShortName>Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPolicies</ParentRole>
      <Position>15</Position>
    </Report>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>000160 - Disclosure - Revenue: Disaggregation of Revenue (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueTables</Role>
      <ShortName>Revenue: Disaggregation of Revenue (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>000170 - Disclosure - Inventories: Inventories (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesTables</Role>
      <ShortName>Inventories: Inventories (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>000180 - Disclosure - Segment Reporting: Schedule of Segment Reporting by Segment (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentTables</Role>
      <ShortName>Segment Reporting: Schedule of Segment Reporting by Segment (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>000190 - Disclosure - Revenue: Disaggregation of Revenue (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails</Role>
      <ShortName>Revenue: Disaggregation of Revenue (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueTables</ParentRole>
      <Position>19</Position>
    </Report>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>000200 - Disclosure - Inventories: Inventories (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesDetails</Role>
      <ShortName>Inventories: Inventories (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesTables</ParentRole>
      <Position>20</Position>
    </Report>
    <Report instance="d805117d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>000210 - Disclosure - Segment Reporting: Schedule of Segment Reporting by Segment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails</Role>
      <ShortName>Segment Reporting: Schedule of Segment Reporting by Segment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentTables</ParentRole>
      <Position>21</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <Logs>
    <Log type="Warning">[ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 4 fact(s) appearing in ix:hidden were eligible for transformation: dei:DocumentQuarterlyReport, dei:DocumentTransitionReport, dei:EntityRegistrantName, dei:SecurityExchangeName -  d805117d10q.htm 8</Log>
    <Log type="Warning">[dqc-0043-Incorrect-Calculation-Weights-In-Operating-Cash-Flows] The concept IncreaseDecreaseInInventories is included in the calculation of NetCashProvidedByUsedInOperatingActivities.IncreaseDecreaseInInventories is a credit balance type concept representing a natural cash outflow in the reconciliation of net income (loss) to NetCashProvidedByUsedInOperatingActivities. A credit balance type concept should always be assigned a negative one (-1) calculation weight as it is a deduction from net income (loss) to reconcile to NetCashProvidedByUsedInOperatingActivities.IncreaseDecreaseInInventories has been incorrectly provided a positive one (+1) calculation weight in the extension taxonomy. Correct the calculation weight to negative one (-1) and input the value as a positive amount if it is a deduction of a non-cash income or gain, an increase in an asset, or a decrease in a liability. If the value is an add-back of a non-cash expense or loss, decrease in an asset, or an increase in a liability and IncreaseDecreaseInInventories is the correct concept, input a negative value. Rule Element Id: 7488. https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd 1957, 4602</Log>
    <Log type="Warning">[dqc-0043-Incorrect-Calculation-Weights-In-Operating-Cash-Flows] The concept GainLossOnDispositionOfAssets is included in the calculation of NetCashProvidedByUsedInOperatingActivities.GainLossOnDispositionOfAssets is a credit balance type concept representing a natural cash outflow in the reconciliation of net income (loss) to NetCashProvidedByUsedInOperatingActivities. A credit balance type concept should always be assigned a negative one (-1) calculation weight as it is a deduction from net income (loss) to reconcile to NetCashProvidedByUsedInOperatingActivities.GainLossOnDispositionOfAssets has been incorrectly provided a positive one (+1) calculation weight in the extension taxonomy. Correct the calculation weight to negative one (-1) and input the value as a positive amount if it is a deduction of a non-cash income or gain, an increase in an asset, or a decrease in a liability. If the value is an add-back of a non-cash expense or loss, decrease in an asset, or an increase in a liability and GainLossOnDispositionOfAssets is the correct concept, input a negative value. Rule Element Id: 7488. https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd 3430, 4602</Log>
    <Log type="Warning">[dqc-0043-Incorrect-Calculation-Weights-In-Operating-Cash-Flows] The concept IncreaseDecreaseInAccountsReceivable is included in the calculation of NetCashProvidedByUsedInOperatingActivities.IncreaseDecreaseInAccountsReceivable is a credit balance type concept representing a natural cash outflow in the reconciliation of net income (loss) to NetCashProvidedByUsedInOperatingActivities. A credit balance type concept should always be assigned a negative one (-1) calculation weight as it is a deduction from net income (loss) to reconcile to NetCashProvidedByUsedInOperatingActivities.IncreaseDecreaseInAccountsReceivable has been incorrectly provided a positive one (+1) calculation weight in the extension taxonomy. Correct the calculation weight to negative one (-1) and input the value as a positive amount if it is a deduction of a non-cash income or gain, an increase in an asset, or a decrease in a liability. If the value is an add-back of a non-cash expense or loss, decrease in an asset, or an increase in a liability and IncreaseDecreaseInAccountsReceivable is the correct concept, input a negative value. Rule Element Id: 7488. https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd 1910, 4602</Log>
    <Log type="Warning">[dqc-0043-Incorrect-Calculation-Weights-In-Operating-Cash-Flows] The concept IncreaseDecreaseInContractWithCustomerAsset is included in the calculation of NetCashProvidedByUsedInOperatingActivities.IncreaseDecreaseInContractWithCustomerAsset is a credit balance type concept representing a natural cash outflow in the reconciliation of net income (loss) to NetCashProvidedByUsedInOperatingActivities. A credit balance type concept should always be assigned a negative one (-1) calculation weight as it is a deduction from net income (loss) to reconcile to NetCashProvidedByUsedInOperatingActivities.IncreaseDecreaseInContractWithCustomerAsset has been incorrectly provided a positive one (+1) calculation weight in the extension taxonomy. Correct the calculation weight to negative one (-1) and input the value as a positive amount if it is a deduction of a non-cash income or gain, an increase in an asset, or a decrease in a liability. If the value is an add-back of a non-cash expense or loss, decrease in an asset, or an increase in a liability and IncreaseDecreaseInContractWithCustomerAsset is the correct concept, input a negative value. Rule Element Id: 7488. https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd 4602, 15893</Log>
    <Log type="Warning">[dqc-0043-Incorrect-Calculation-Weights-In-Operating-Cash-Flows] The concept IncreaseDecreaseInOtherOperatingAssets is included in the calculation of NetCashProvidedByUsedInOperatingActivities.IncreaseDecreaseInOtherOperatingAssets is a credit balance type concept representing a natural cash outflow in the reconciliation of net income (loss) to NetCashProvidedByUsedInOperatingActivities. A credit balance type concept should always be assigned a negative one (-1) calculation weight as it is a deduction from net income (loss) to reconcile to NetCashProvidedByUsedInOperatingActivities.IncreaseDecreaseInOtherOperatingAssets has been incorrectly provided a positive one (+1) calculation weight in the extension taxonomy. Correct the calculation weight to negative one (-1) and input the value as a positive amount if it is a deduction of a non-cash income or gain, an increase in an asset, or a decrease in a liability. If the value is an add-back of a non-cash expense or loss, decrease in an asset, or an increase in a liability and IncreaseDecreaseInOtherOperatingAssets is the correct concept, input a negative value. Rule Element Id: 7488. https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd 3739, 4602</Log>
    <Log type="Warning">[DQC.US.0057.9728] One of the following elements CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents, CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations should appear as the opening and closing balance in the cash flow statement using the group http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited. Instead the following balance items have been used in this statement CashAndCashEquivalentsAtCarryingValue. Due to the implementaion of ASU-2016-18 at least one of the opening and closing balance items listed must be used in the cash flow statement. - https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd 1778 - https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd 1778</Log>
  </Logs>
  <InputFiles>
    <File>cvr-20240331.xsd</File>
    <File>cvr-20240331_cal.xml</File>
    <File>cvr-20240331_def.xml</File>
    <File>cvr-20240331_lab.xml</File>
    <File>cvr-20240331_pre.xml</File>
    <File doctype="10-Q" isDefinitelyFs="true" isUsgaap="true" original="d805117d10q.htm">d805117d10q.htm</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="302">http://fasb.org/us-gaap/2023</BaseTaxonomy>
    <BaseTaxonomy items="30">http://xbrl.sec.gov/dei/2023</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>40
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "d805117d10q.htm": {
   "nsprefix": "fil",
   "nsuri": "http://www.chicagorivet.com/20240331",
   "dts": {
    "schema": {
     "local": [
      "cvr-20240331.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",
      "http://www.xbrl.org/lrr/role/reference-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"
     ]
    },
    "calculationLink": {
     "local": [
      "cvr-20240331_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "cvr-20240331_def.xml"
     ]
    },
    "labelLink": {
     "local": [
      "cvr-20240331_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "cvr-20240331_pre.xml"
     ]
    },
    "inline": {
     "local": [
      "d805117d10q.htm"
     ]
    }
   },
   "keyStandard": 127,
   "keyCustom": 2,
   "axisStandard": 4,
   "axisCustom": 0,
   "memberStandard": 8,
   "memberCustom": 6,
   "hidden": {
    "total": 9,
    "http://xbrl.sec.gov/dei/2023": 9
   },
   "contextCount": 67,
   "entityCount": 1,
   "segmentCount": 14,
   "elementCount": 178,
   "unitCount": 3,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2023": 302,
    "http://xbrl.sec.gov/dei/2023": 30
   },
   "report": {
    "R1": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation",
     "longName": "000010 - Document - Document and Entity Information",
     "shortName": "Document and Entity Information",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "Y24Q1",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "b",
       "p",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Y24Q1",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "b",
       "p",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R2": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited",
     "longName": "000020 - Statement - Condensed Consolidated Balance Sheets (Unaudited)",
     "shortName": "Condensed Consolidated Balance Sheets (Unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "2",
     "firstAnchor": {
      "contextRef": "E24Q1",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "E24Q1",
      "name": "us-gaap:ShortTermInvestments",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "unique": true
     }
    },
    "R3": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical",
     "longName": "000030 - Statement - Condensed Consolidated Balance Sheets (Unaudited) - Parenthetical",
     "shortName": "Condensed Consolidated Balance Sheets (Unaudited) - Parenthetical",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "3",
     "firstAnchor": {
      "contextRef": "E24Q1",
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "unitRef": "UsdPerShare",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "E24Q1",
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "unitRef": "UsdPerShare",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R4": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited",
     "longName": "000040 - Statement - Condensed Consolidated Statements of Operations (Unaudited)",
     "shortName": "Condensed Consolidated Statements of Operations (Unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "4",
     "firstAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:Revenues",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:CostOfRevenue",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "unique": true
     }
    },
    "R5": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited",
     "longName": "000050 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited)",
     "shortName": "Condensed Consolidated Statements of Shareholders' Equity (Unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "5",
     "firstAnchor": {
      "contextRef": "E22",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "E22",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R6": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnauditedParenthetical",
     "longName": "000060 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited) - Parenthetical",
     "shortName": "Condensed Consolidated Statements of Shareholders' Equity (Unaudited) - Parenthetical",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "6",
     "firstAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:CommonStockDividendsPerShareDeclared",
      "unitRef": "UsdPerShare",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R7": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited",
     "longName": "000070 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)",
     "shortName": "Condensed Consolidated Statements of Cash Flows (Unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "7",
     "firstAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:GainLossOnDispositionOfAssets",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "unique": true
     }
    },
    "R8": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPolicies",
     "longName": "000080 - Disclosure - Accounting Policies",
     "shortName": "Accounting Policies",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "8",
     "firstAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R9": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_DisclosureRisksAndUncertainties",
     "longName": "000090 - Disclosure - Risks and Uncertainties",
     "shortName": "Risks and Uncertainties",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "9",
     "firstAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:ConcentrationRiskDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:ConcentrationRiskDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R10": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_DisclosureCommitmentsAndContingencies",
     "longName": "000100 - Disclosure - Commitments and Contingencies",
     "shortName": "Commitments and Contingencies",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "10",
     "firstAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:LegalMattersAndContingenciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:LegalMattersAndContingenciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R11": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenue",
     "longName": "000110 - Disclosure - Revenue",
     "shortName": "Revenue",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "11",
     "firstAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R12": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_DisclosureIncomeTaxes",
     "longName": "000120 - Disclosure - Income Taxes",
     "shortName": "Income Taxes",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "12",
     "firstAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R13": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_DisclosureInventories",
     "longName": "000130 - Disclosure - Inventories",
     "shortName": "Inventories",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "13",
     "firstAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R14": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReporting",
     "longName": "000140 - Disclosure - Segment Reporting",
     "shortName": "Segment Reporting",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "14",
     "firstAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R15": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPoliciesPolicies",
     "longName": "000150 - Disclosure - Accounting Policies (Policies)",
     "shortName": "Accounting Policies (Policies)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "policies",
     "menuCat": "Policies",
     "order": "15",
     "firstAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R16": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueTables",
     "longName": "000160 - Disclosure - Revenue: Disaggregation of Revenue (Tables)",
     "shortName": "Revenue: Disaggregation of Revenue (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "16",
     "firstAnchor": {
      "contextRef": "Y24Q1_StGeo-Location",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Y24Q1_StGeo-Location",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R17": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesTables",
     "longName": "000170 - Disclosure - Inventories: Inventories (Tables)",
     "shortName": "Inventories: Inventories (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "17",
     "firstAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R18": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentTables",
     "longName": "000180 - Disclosure - Segment Reporting: Schedule of Segment Reporting by Segment (Tables)",
     "shortName": "Segment Reporting: Schedule of Segment Reporting by Segment (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "18",
     "firstAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R19": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
     "longName": "000190 - Disclosure - Revenue: Disaggregation of Revenue (Details)",
     "shortName": "Revenue: Disaggregation of Revenue (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "19",
     "firstAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R20": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesDetails",
     "longName": "000200 - Disclosure - Inventories: Inventories (Details)",
     "shortName": "Inventories: Inventories (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "20",
     "firstAnchor": {
      "contextRef": "E24Q1",
      "name": "us-gaap:InventoryRawMaterials",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "E24Q1",
      "name": "us-gaap:InventoryRawMaterials",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R21": {
     "role": "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails",
     "longName": "000210 - Disclosure - Segment Reporting: Schedule of Segment Reporting by Segment (Details)",
     "shortName": "Segment Reporting: Schedule of Segment Reporting by Segment (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "21",
     "firstAnchor": {
      "contextRef": "Y24Q1",
      "name": "us-gaap:Revenues",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "Y24Q1_StBusnSeg-Fastener",
      "name": "us-gaap:Revenues",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "d805117d10q.htm",
      "unique": true
     }
    }
   },
   "tag": {
    "us-gaap_AccountsPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccountsPayableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts payable",
        "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r404"
     ]
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccountsReceivableNetCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails",
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts receivable - Less allowances of $160,000",
        "verboseLabel": "Accounts receivable - Less allowances of $160,000",
        "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current."
       }
      }
     },
     "auth_ref": [
      "r160",
      "r161"
     ]
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccruedLiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other accrued expenses",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r9"
     ]
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Less accumulated depreciation",
        "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services."
       }
      }
     },
     "auth_ref": [
      "r23",
      "r80",
      "r280"
     ]
    },
    "us-gaap_AdditionalPaidInCapital": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdditionalPaidInCapital",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional paid-in capital",
        "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock."
       }
      }
     },
     "auth_ref": [
      "r30",
      "r404",
      "r466"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdditionalPaidInCapitalMember",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional Paid-in Capital",
        "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders."
       }
      }
     },
     "auth_ref": [
      "r223",
      "r224",
      "r225",
      "r311",
      "r434",
      "r435",
      "r436",
      "r453",
      "r467"
     ]
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to reconcile net loss to net cash used in operating activities"
       }
      }
     },
     "auth_ref": []
    },
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amendment Flag",
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission."
       }
      }
     },
     "auth_ref": []
    },
    "fil_AssemblyEquipmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.chicagorivet.com/20240331",
     "localname": "AssemblyEquipmentMember",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assembly Equipment",
        "documentation": "Represents the Assembly Equipment, during the indicated time period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_Assets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "Assets",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total assets",
        "totalLabel": "Total assets",
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events."
       }
      }
     },
     "auth_ref": [
      "r56",
      "r82",
      "r97",
      "r124",
      "r145",
      "r151",
      "r163",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r248",
      "r250",
      "r260",
      "r276",
      "r337",
      "r404",
      "r416",
      "r446",
      "r447",
      "r455"
     ]
    },
    "us-gaap_AssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetsAbstract",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets {1}",
        "terseLabel": "Assets"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total current assets",
        "totalLabel": "Total current assets",
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events."
       }
      }
     },
     "auth_ref": [
      "r75",
      "r86",
      "r97",
      "r163",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r248",
      "r250",
      "r260",
      "r404",
      "r446",
      "r447",
      "r455"
     ]
    },
    "us-gaap_AssetsCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetsCurrentAbstract",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current Assets"
       }
      }
     },
     "auth_ref": []
    },
    "fil_AutomotiveMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.chicagorivet.com/20240331",
     "localname": "AutomotiveMember",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Automotive",
        "documentation": "Represents the Automotive, during the indicated time period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BasisOfAccountingPolicyPolicyTextBlock",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Policies {1}",
        "terseLabel": "Accounting Policies",
        "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BuildingsAndImprovementsGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BuildingsAndImprovementsGross",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Buildings and improvements",
        "documentation": "Amount before accumulated depreciation of building structures held for productive use including addition, improvement, or renovation to the structure, including, but not limited to, interior masonry, interior flooring, electrical, and plumbing."
       }
      }
     },
     "auth_ref": [
      "r51"
     ]
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited",
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and cash equivalents",
        "periodStartLabel": "Cash and cash equivalents at beginning of period",
        "periodEndLabel": "Cash and cash equivalents at end of period",
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r78",
      "r390"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net decrease in cash and cash equivalents",
        "totalLabel": "Net decrease in cash and cash equivalents",
        "documentation": "Amount of increase (decrease) in cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; excluding effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates."
       }
      }
     },
     "auth_ref": [
      "r0",
      "r45"
     ]
    },
    "dei_CityAreaCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CityAreaCode",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "City Area Code",
        "documentation": "Area code of city"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and contingencies (Note 3)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingenciesPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommitmentsAndContingenciesPolicyTextBlock",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies {2}",
        "terseLabel": "Commitments and Contingencies",
        "documentation": "Disclosure of accounting policy for commitments and contingencies, which may include policies for recognizing and measuring loss and gain contingencies."
       }
      }
     },
     "auth_ref": [
      "r24",
      "r375"
     ]
    },
    "us-gaap_CommonStockDividendsPerShareDeclared": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockDividendsPerShareDeclared",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited",
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnauditedParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash dividends declared per share",
        "documentation": "Aggregate dividends declared during the period for each share of common stock outstanding."
       }
      }
     },
     "auth_ref": [
      "r53"
     ]
    },
    "us-gaap_CommonStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockMember",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock",
        "documentation": "Stock that is subordinate to all other stock of the issuer."
       }
      }
     },
     "auth_ref": [
      "r407",
      "r408",
      "r409",
      "r411",
      "r412",
      "r413",
      "r414",
      "r434",
      "r435",
      "r453",
      "r465",
      "r467"
     ]
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockParOrStatedValuePerShare",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Par or Stated Value Per Share",
        "documentation": "Face amount or stated value per share of common stock."
       }
      }
     },
     "auth_ref": [
      "r29"
     ]
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockSharesAuthorized",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Shares Authorized",
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws."
       }
      }
     },
     "auth_ref": [
      "r29",
      "r325"
     ]
    },
    "us-gaap_CommonStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockSharesIssued",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Shares, Issued",
        "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury."
       }
      }
     },
     "auth_ref": [
      "r29"
     ]
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockSharesOutstanding",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical",
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Shares, Outstanding",
        "periodStartLabel": "Common Stock Shares",
        "periodEndLabel": "Common Stock Shares",
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r29",
      "r325",
      "r343",
      "r467",
      "r468"
     ]
    },
    "us-gaap_CommonStockValueOutstanding": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockValueOutstanding",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common stock, $1.00 par value, 4,000,000 shares authorized, 1,138,096 shares issued; 966,132 shares outstanding",
        "documentation": "Value of all classes of common stock held by shareholders. May be all or portion of the number of common shares authorized. These shares exclude common shares repurchased by the entity and held as treasury shares."
       }
      }
     },
     "auth_ref": [
      "r29",
      "r325"
     ]
    },
    "us-gaap_ConcentrationRiskCreditRisk": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConcentrationRiskCreditRisk",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Risks and Uncertainties {1}",
        "terseLabel": "Risks and Uncertainties",
        "documentation": "Disclosure of accounting policy for credit risk."
       }
      }
     },
     "auth_ref": [
      "r27",
      "r68"
     ]
    },
    "us-gaap_ConcentrationRiskDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConcentrationRiskDisclosureTextBlock",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRisksAndUncertainties"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Risks and Uncertainties",
        "documentation": "The entire disclosure for any concentrations existing at the date of the financial statements that make an entity vulnerable to a reasonably possible, near-term, severe impact. This disclosure informs financial statement users about the general nature of the risk associated with the concentration, and may indicate the percentage of concentration risk as of the balance sheet date."
       }
      }
     },
     "auth_ref": [
      "r49"
     ]
    },
    "us-gaap_ContractWithCustomerAssetNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ContractWithCustomerAssetNetCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract assets",
        "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current."
       }
      }
     },
     "auth_ref": [
      "r196",
      "r197",
      "r216"
     ]
    },
    "us-gaap_CorporateMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CorporateMember",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Corporate Segment",
        "documentation": "Component of an entity that usually provides financial, operational and administrative support and is considered an operating segment. Excludes intersegment elimination and reconciling items."
       }
      }
     },
     "auth_ref": [
      "r437"
     ]
    },
    "us-gaap_CostOfRevenue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CostOfRevenue",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost of goods sold",
        "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r41",
      "r97",
      "r163",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r260",
      "r446"
     ]
    },
    "dei_CurrentFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CurrentFiscalYearEndDate",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fiscal Year End",
        "documentation": "End date of current fiscal year in the format --MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CustomerAdvancesAndDepositsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CustomerAdvancesAndDepositsCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Unearned revenue and customer deposits",
        "documentation": "The current portion of aggregate prepayments received from customers for goods or services to be provided in the future, as well as the current portion of money or property received from customers that are to be returned upon satisfactory contract completion or as partial prepayment for goods or services to be provided in the future."
       }
      }
     },
     "auth_ref": [
      "r63"
     ]
    },
    "us-gaap_DeferredIncomeTaxAssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredIncomeTaxAssetsNet",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred income taxes, net",
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting."
       }
      }
     },
     "auth_ref": [
      "r229",
      "r230"
     ]
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred income taxes",
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r3",
      "r54",
      "r69",
      "r242",
      "r243",
      "r433"
     ]
    },
    "us-gaap_Depreciation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "Depreciation",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails",
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Depreciation",
        "documentation": "The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation."
       }
      }
     },
     "auth_ref": [
      "r3",
      "r22"
     ]
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregation of Revenue",
        "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor."
       }
      }
     },
     "auth_ref": [
      "r449"
     ]
    },
    "us-gaap_DisclosureTextBlockAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisclosureTextBlockAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Notes"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_Dividends": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "Dividends",
     "crdr": "debit",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Dividends declared",
        "negatedLabel": "Dividends declared",
        "documentation": "Amount of paid and unpaid cash, stock, and paid-in-kind (PIK) dividends declared, for example, but not limited to, common and preferred stock."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r53"
     ]
    },
    "dei_DocumentFiscalPeriodFocus": {
     "xbrltype": "fiscalPeriodItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentFiscalPeriodFocus",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "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://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "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://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Period End Date",
        "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  The format of the date is YYYY-MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentQuarterlyReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentQuarterlyReport",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "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": [
      "r420"
     ]
    },
    "dei_DocumentTransitionReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentTransitionReport",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "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": [
      "r421"
     ]
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentType",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Type",
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareAbstract",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Per share data"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EmployeeRelatedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeRelatedLiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued wages and salaries",
        "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r9"
     ]
    },
    "fil_EndMarketMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.chicagorivet.com/20240331",
     "localname": "EndMarketMember",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "End Market",
        "documentation": "Represents the End Market, during the indicated time period."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressAddressLine1": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressAddressLine1",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Address Line One",
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressCityOrTown": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressCityOrTown",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, City or Town",
        "documentation": "Name of the City or Town"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressPostalZipCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressPostalZipCode",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Postal Zip Code",
        "documentation": "Code for the postal or zip code"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressStateOrProvince": {
     "xbrltype": "stateOrProvinceItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressStateOrProvince",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, State or Province",
        "documentation": "Name of the state or province."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Registrant CIK",
        "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": [
      "r418"
     ]
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCommonStockSharesOutstanding",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "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://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "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://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Emerging Growth Company",
        "documentation": "Indicate if registrant meets the emerging growth company criteria."
       }
      }
     },
     "auth_ref": [
      "r418"
     ]
    },
    "dei_EntityFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityFileNumber",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "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://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "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": [
      "r418"
     ]
    },
    "dei_EntityIncorporationStateCountryCode": {
     "xbrltype": "edgarStateCountryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityIncorporationStateCountryCode",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Incorporation, State or Country Code",
        "documentation": "Two-character EDGAR code representing the state or country of incorporation."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityInteractiveDataCurrent": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityInteractiveDataCurrent",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "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": [
      "r422"
     ]
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Registrant Name",
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC."
       }
      }
     },
     "auth_ref": [
      "r418"
     ]
    },
    "dei_EntityShellCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityShellCompany",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "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": [
      "r418"
     ]
    },
    "dei_EntitySmallBusiness": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntitySmallBusiness",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Small Business",
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)."
       }
      }
     },
     "auth_ref": [
      "r418"
     ]
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityTaxIdentificationNumber",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Tax Identification Number",
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS."
       }
      }
     },
     "auth_ref": [
      "r418"
     ]
    },
    "us-gaap_EquityComponentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EquityComponentDomain",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Component",
        "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r72",
      "r90",
      "r91",
      "r92",
      "r100",
      "r101",
      "r102",
      "r104",
      "r109",
      "r111",
      "r119",
      "r164",
      "r165",
      "r195",
      "r223",
      "r224",
      "r225",
      "r238",
      "r239",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r261",
      "r262",
      "r263",
      "r264",
      "r265",
      "r266",
      "r267",
      "r302",
      "r303",
      "r304",
      "r311",
      "r362"
     ]
    },
    "fil_FastenerMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.chicagorivet.com/20240331",
     "localname": "FastenerMember",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fastener",
        "documentation": "Represents the Fastener, during the indicated time period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GainLossOnDispositionOfAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GainLossOnDispositionOfAssets",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Gain on disposal of equipment",
        "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, excluding oil and gas property and timber property."
       }
      }
     },
     "auth_ref": [
      "r431",
      "r441",
      "r442"
     ]
    },
    "us-gaap_GrossProfit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GrossProfit",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Gross profit",
        "totalLabel": "Gross profit",
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity."
       }
      }
     },
     "auth_ref": [
      "r40",
      "r97",
      "r124",
      "r144",
      "r150",
      "r153",
      "r163",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r260",
      "r395",
      "r446"
     ]
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Loss before income taxes",
        "totalLabel": "Loss before income taxes",
        "documentation": "The portion of earnings or loss from continuing operations before income taxes that is attributable to domestic operations."
       }
      }
     },
     "auth_ref": [
      "r98",
      "r244"
     ]
    },
    "us-gaap_IncomeLossFromContinuingOperationsPerBasicShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeLossFromContinuingOperationsPerBasicShare",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basic net loss per share",
        "documentation": "The amount of net income (loss) from continuing operations per each share of common stock or unit outstanding during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r38",
      "r60",
      "r61",
      "r94",
      "r103",
      "r105",
      "r106",
      "r107",
      "r108",
      "r114",
      "r116",
      "r117",
      "r259",
      "r272",
      "r463"
     ]
    },
    "us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeLossFromContinuingOperationsPerDilutedShare",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Diluted net loss per share",
        "documentation": "The amount of net income (loss) derived from continuing operations during the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r38",
      "r94",
      "r103",
      "r105",
      "r106",
      "r107",
      "r108",
      "r114",
      "r116",
      "r117",
      "r118",
      "r259",
      "r272",
      "r463"
     ]
    },
    "us-gaap_IncomeStatementAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeStatementAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Condensed Consolidated Statements of Operations (Unaudited)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxDisclosureTextBlock",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureIncomeTaxes"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Taxes",
        "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information."
       }
      }
     },
     "auth_ref": [
      "r99",
      "r226",
      "r232",
      "r233",
      "r236",
      "r240",
      "r245",
      "r246",
      "r247",
      "r310"
     ]
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Benefit for income taxes",
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r66",
      "r70",
      "r110",
      "r111",
      "r132",
      "r231",
      "r241",
      "r283"
     ]
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxPolicyTextBlock",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Taxes {1}",
        "terseLabel": "Income Taxes",
        "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements."
       }
      }
     },
     "auth_ref": [
      "r89",
      "r227",
      "r228",
      "r233",
      "r234",
      "r235",
      "r237",
      "r308"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInAccountsPayable",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 9.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts payable {1}",
        "terseLabel": "Accounts payable",
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts receivable",
        "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "us-gaap_IncreaseDecreaseInContractWithCustomerAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInContractWithCustomerAsset",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract assets {1}",
        "terseLabel": "Contract assets",
        "documentation": "Amount of increase (decrease) in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time."
       }
      }
     },
     "auth_ref": [
      "r430"
     ]
    },
    "us-gaap_IncreaseDecreaseInCustomerAdvancesAndDeposits": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInCustomerAdvancesAndDeposits",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 12.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Unearned revenue and customer deposits {1}",
        "terseLabel": "Unearned revenue and customer deposits",
        "documentation": "The increase (decrease) during the reporting period in the amount of (a) prepayments by customers for goods or services to be provided at a later date, (b) the amount of customer money held in customer accounts, including security deposits, collateral for a current or future transactions, initial payment of the cost of acquisition or for the right to enter into a contract or agreement, or (c) a combination of (a) and (b)."
       }
      }
     },
     "auth_ref": [
      "r64"
     ]
    },
    "us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInEmployeeRelatedLiabilities",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 10.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued wages and salaries {1}",
        "terseLabel": "Accrued wages and salaries",
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInInventories",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventories",
        "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Changes in operating assets and liabilities"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInOtherAccruedLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInOtherAccruedLiabilities",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 11.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other accrued expenses {1}",
        "terseLabel": "Other accrued expenses",
        "documentation": "The increase (decrease) during the reporting period in other expenses incurred but not yet paid."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "us-gaap_IncreaseDecreaseInOtherOperatingAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInOtherOperatingAssets",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 8.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other current assets {1}",
        "terseLabel": "Other current assets",
        "documentation": "Amount of increase (decrease) in operating assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "us-gaap_InterestAndOtherIncome": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InterestAndOtherIncome",
     "crdr": "credit",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest income",
        "documentation": "The amount of interest income and other income recognized during the period. Included in this element is interest derived from investments in debt securities, cash and cash equivalents, and other investments which reflect the time value of money or transactions in which the payments are for the use or forbearance of money and other income from ancillary business-related activities (that is, excluding major activities considered part of the normal operations of the business)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryDisclosureTextBlock",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureInventories"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventories {1}",
        "terseLabel": "Inventories",
        "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory."
       }
      }
     },
     "auth_ref": [
      "r166"
     ]
    },
    "us-gaap_InventoryFinishedGoods": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryFinishedGoods",
     "crdr": "debit",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finished goods",
        "documentation": "Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r425"
     ]
    },
    "us-gaap_InventoryGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryGross",
     "crdr": "debit",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventories, gross",
        "documentation": "Gross amount, as of the balance sheet date, of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process."
       }
      }
     },
     "auth_ref": [
      "r428"
     ]
    },
    "us-gaap_InventoryNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryNet",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesDetails",
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails",
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventories, net",
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r84",
      "r391",
      "r404"
     ]
    },
    "us-gaap_InventoryPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryPolicyTextBlock",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventories {2}",
        "terseLabel": "Inventories",
        "documentation": "Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost."
       }
      }
     },
     "auth_ref": [
      "r67",
      "r77",
      "r83",
      "r166",
      "r167",
      "r168",
      "r270",
      "r393"
     ]
    },
    "us-gaap_InventoryRawMaterials": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryRawMaterials",
     "crdr": "debit",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Raw material",
        "documentation": "Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r427"
     ]
    },
    "us-gaap_InventoryValuationReserves": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryValuationReserves",
     "crdr": "credit",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Valuation reserves",
        "negatedLabel": "Valuation reserves",
        "documentation": "Amount of valuation reserve for inventory."
       }
      }
     },
     "auth_ref": [
      "r20",
      "r428"
     ]
    },
    "us-gaap_InventoryWorkInProcess": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryWorkInProcess",
     "crdr": "debit",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Work-in-process",
        "documentation": "Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r426"
     ]
    },
    "us-gaap_LandAndLandImprovements": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LandAndLandImprovements",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Land and improvements",
        "documentation": "Amount before accumulated depreciation and depletion of real estate held for productive use and additions or improvements to real estate held for productive use, examples include, but are not limited to, walkways, driveways, fences, and parking lots. Excludes land held for sale."
       }
      }
     },
     "auth_ref": [
      "r424"
     ]
    },
    "us-gaap_LegalMattersAndContingenciesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LegalMattersAndContingenciesTextBlock",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureCommitmentsAndContingencies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies {1}",
        "terseLabel": "Commitments and Contingencies",
        "documentation": "The entire disclosure for legal proceedings, legal contingencies, litigation, regulatory and environmental matters and other contingencies."
       }
      }
     },
     "auth_ref": [
      "r52"
     ]
    },
    "us-gaap_Liabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "Liabilities",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total liabilities",
        "totalLabel": "Total liabilities",
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future."
       }
      }
     },
     "auth_ref": [
      "r8",
      "r97",
      "r163",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r249",
      "r250",
      "r251",
      "r260",
      "r324",
      "r394",
      "r416",
      "r446",
      "r455",
      "r456"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesAndStockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total liabilities and shareholders' equity",
        "totalLabel": "Total liabilities and shareholders' equity",
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any."
       }
      }
     },
     "auth_ref": [
      "r34",
      "r57",
      "r279",
      "r404",
      "r432",
      "r439",
      "r454"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities and Shareholders' Equity"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total current liabilities",
        "totalLabel": "Total current liabilities",
        "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r10",
      "r76",
      "r97",
      "r163",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r249",
      "r250",
      "r251",
      "r260",
      "r404",
      "r446",
      "r455",
      "r456"
     ]
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesCurrentAbstract",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current Liabilities"
       }
      }
     },
     "auth_ref": []
    },
    "dei_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "LocalPhoneNumber",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Local Phone Number",
        "documentation": "Local phone number for entity."
       }
      }
     },
     "auth_ref": []
    },
    "fil_LocationMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.chicagorivet.com/20240331",
     "localname": "LocationMember",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Location",
        "documentation": "Represents the Location, during the indicated time period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_MachineryAndEquipmentGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "MachineryAndEquipmentGross",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Production equipment and other",
        "documentation": "Amount before accumulated depreciation of tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment."
       }
      }
     },
     "auth_ref": [
      "r51"
     ]
    },
    "srt_MaximumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "MaximumMember",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum"
       }
      }
     },
     "auth_ref": [
      "r181",
      "r182",
      "r183",
      "r184",
      "r219",
      "r269",
      "r301",
      "r316",
      "r317",
      "r365",
      "r367",
      "r369",
      "r370",
      "r372",
      "r385",
      "r386",
      "r397",
      "r400",
      "r403",
      "r406",
      "r448",
      "r457",
      "r458",
      "r459",
      "r460",
      "r461",
      "r462"
     ]
    },
    "srt_MinimumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "MinimumMember",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum"
       }
      }
     },
     "auth_ref": [
      "r181",
      "r182",
      "r183",
      "r184",
      "r219",
      "r269",
      "r301",
      "r316",
      "r317",
      "r365",
      "r367",
      "r369",
      "r370",
      "r372",
      "r385",
      "r386",
      "r397",
      "r400",
      "r403",
      "r406",
      "r448",
      "r457",
      "r458",
      "r459",
      "r460",
      "r461",
      "r462"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net cash used in financing activities",
        "totalLabel": "Net cash used in financing activities",
        "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit."
       }
      }
     },
     "auth_ref": [
      "r95"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows from financing activities"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net cash provided by investing activities",
        "totalLabel": "Net cash provided by investing activities",
        "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets."
       }
      }
     },
     "auth_ref": [
      "r95"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows from investing activities"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net cash used in operating activities",
        "totalLabel": "Net cash used in operating activities",
        "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities."
       }
      }
     },
     "auth_ref": [
      "r45",
      "r46",
      "r47"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows from operating activities"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited",
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited",
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net loss",
        "totalLabel": "Net loss",
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent."
       }
      }
     },
     "auth_ref": [
      "r39",
      "r47",
      "r62",
      "r74",
      "r87",
      "r88",
      "r92",
      "r97",
      "r103",
      "r105",
      "r106",
      "r107",
      "r108",
      "r110",
      "r111",
      "r115",
      "r124",
      "r144",
      "r150",
      "r153",
      "r163",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r259",
      "r260",
      "r282",
      "r345",
      "r360",
      "r361",
      "r395",
      "r415",
      "r446"
     ]
    },
    "us-gaap_NonUsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NonUsMember",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-US",
        "documentation": "Countries excluding the United States of America (US)."
       }
      }
     },
     "auth_ref": [
      "r469",
      "r470",
      "r471",
      "r472"
     ]
    },
    "fil_NonautomotiveMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.chicagorivet.com/20240331",
     "localname": "NonautomotiveMember",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "NonAutomotive",
        "documentation": "Represents the NonAutomotive, during the indicated time period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingExpenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingExpenses",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Selling and administrative expenses",
        "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating loss",
        "totalLabel": "Operating loss",
        "documentation": "The net result for the period of deducting operating expenses from operating revenues."
       }
      }
     },
     "auth_ref": [
      "r124",
      "r144",
      "r150",
      "r153",
      "r395"
     ]
    },
    "us-gaap_OtherAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherAssets",
     "crdr": "debit",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Assets",
        "documentation": "Amount of assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r55",
      "r81",
      "r275",
      "r416"
     ]
    },
    "us-gaap_OtherAssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherAssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other current assets",
        "documentation": "Amount of current assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r85",
      "r404"
     ]
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherNonoperatingIncomeExpense",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other income",
        "documentation": "Amount of income (expense) related to nonoperating activities, classified as other."
       }
      }
     },
     "auth_ref": [
      "r42"
     ]
    },
    "us-gaap_PaymentsOfDividendsCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsOfDividendsCommonStock",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash dividends paid",
        "negatedLabel": "Cash dividends paid",
        "documentation": "Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity."
       }
      }
     },
     "auth_ref": [
      "r15"
     ]
    },
    "us-gaap_PaymentsToAcquireHeldToMaturitySecurities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsToAcquireHeldToMaturitySecurities",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Purchases of short-term investments",
        "negatedLabel": "Purchases of short-term investments",
        "documentation": "Amount of cash outflow through purchase of long-term held-to-maturity securities."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r162"
     ]
    },
    "us-gaap_PaymentsToAcquireProductiveAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsToAcquireProductiveAssets",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Capital expenditures",
        "negatedLabel": "Capital expenditures",
        "documentation": "The cash outflow for purchases of and capital improvements on property, plant and equipment (capital expenditures), software, and other intangible assets."
       }
      }
     },
     "auth_ref": [
      "r65",
      "r450",
      "r451",
      "r452"
     ]
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "crdr": "credit",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Capital expenditures {1}",
        "terseLabel": "Capital expenditures",
        "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets."
       }
      }
     },
     "auth_ref": [
      "r44"
     ]
    },
    "us-gaap_PolicyTextBlockAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PolicyTextBlockAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Policies"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PreferredStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PreferredStockMember",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock",
        "documentation": "Preferred shares may provide a preferential dividend to the dividend on common stock and may take precedence over common stock in the event of a liquidation. Preferred shares typically represent an ownership interest in the company."
       }
      }
     },
     "auth_ref": [
      "r407",
      "r408",
      "r411",
      "r412",
      "r413",
      "r414",
      "r465",
      "r467"
     ]
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PreferredStockParOrStatedValuePerShare",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock, Par or Stated Value Per Share",
        "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer."
       }
      }
     },
     "auth_ref": [
      "r28",
      "r194"
     ]
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PreferredStockSharesAuthorized",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock, Shares Authorized",
        "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws."
       }
      }
     },
     "auth_ref": [
      "r28",
      "r325"
     ]
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PreferredStockSharesOutstanding",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock, Shares Outstanding",
        "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased."
       }
      }
     },
     "auth_ref": [
      "r28",
      "r325",
      "r343",
      "r467",
      "r468"
     ]
    },
    "us-gaap_PreferredStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PreferredStockValue",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred stock, no par value, 500,000 shares authorized: none outstanding",
        "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity."
       }
      }
     },
     "auth_ref": [
      "r28",
      "r277",
      "r404"
     ]
    },
    "us-gaap_PrepaidTaxes": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PrepaidTaxes",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income taxes receivable",
        "documentation": "Amount of asset related to consideration paid in advance for income and other taxes that provide economic benefits within a future period of one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r392",
      "r398",
      "r440"
     ]
    },
    "us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Proceeds from short-term investments",
        "documentation": "The cash inflow associated with the maturity, prepayments and calls (requests for early payments) of debt securities designated as held-to-maturity."
       }
      }
     },
     "auth_ref": [
      "r13",
      "r438"
     ]
    },
    "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Proceeds from the sale of equipment",
        "documentation": "The cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale."
       }
      }
     },
     "auth_ref": [
      "r43"
     ]
    },
    "srt_ProductOrServiceAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ProductOrServiceAxis",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]"
       }
      }
     },
     "auth_ref": [
      "r155",
      "r271",
      "r295",
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r388",
      "r401",
      "r405",
      "r423",
      "r444",
      "r445",
      "r449",
      "r464"
     ]
    },
    "srt_ProductsAndServicesDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ProductsAndServicesDomain",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service"
       }
      }
     },
     "auth_ref": [
      "r155",
      "r271",
      "r295",
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r388",
      "r401",
      "r405",
      "r423",
      "r444",
      "r445",
      "r449",
      "r464"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentAbstract",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentGross",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment, Gross",
        "totalLabel": "Property, Plant and Equipment, Gross",
        "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures."
       }
      }
     },
     "auth_ref": [
      "r51",
      "r79",
      "r281"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentNet",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails",
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net property, plant and equipment",
        "totalLabel": "Net property, plant and equipment",
        "verboseLabel": "Net property, plant and equipment",
        "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures."
       }
      }
     },
     "auth_ref": [
      "r4",
      "r274",
      "r281",
      "r404"
     ]
    },
    "srt_RangeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "RangeAxis",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]"
       }
      }
     },
     "auth_ref": [
      "r181",
      "r182",
      "r183",
      "r184",
      "r218",
      "r219",
      "r220",
      "r221",
      "r222",
      "r268",
      "r269",
      "r301",
      "r316",
      "r317",
      "r365",
      "r367",
      "r369",
      "r370",
      "r372",
      "r385",
      "r386",
      "r397",
      "r400",
      "r403",
      "r406",
      "r409",
      "r443",
      "r448",
      "r458",
      "r459",
      "r460",
      "r461",
      "r462"
     ]
    },
    "srt_RangeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "RangeMember",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement"
       }
      }
     },
     "auth_ref": [
      "r181",
      "r182",
      "r183",
      "r184",
      "r218",
      "r219",
      "r220",
      "r221",
      "r222",
      "r268",
      "r269",
      "r301",
      "r316",
      "r317",
      "r365",
      "r367",
      "r369",
      "r370",
      "r372",
      "r385",
      "r386",
      "r397",
      "r400",
      "r403",
      "r406",
      "r409",
      "r443",
      "r448",
      "r458",
      "r459",
      "r460",
      "r461",
      "r462"
     ]
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RetainedEarningsAccumulatedDeficit",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retained earnings",
        "documentation": "Amount of accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r31",
      "r53",
      "r278",
      "r305",
      "r306",
      "r309",
      "r326",
      "r404"
     ]
    },
    "us-gaap_RetainedEarningsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RetainedEarningsMember",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retained Earnings",
        "documentation": "Accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r72",
      "r100",
      "r101",
      "r102",
      "r104",
      "r109",
      "r111",
      "r164",
      "r165",
      "r223",
      "r224",
      "r225",
      "r238",
      "r239",
      "r252",
      "r254",
      "r255",
      "r257",
      "r258",
      "r302",
      "r304",
      "r311",
      "r467"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "crdr": "credit",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue {2}",
        "terseLabel": "Revenue",
        "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise."
       }
      }
     },
     "auth_ref": [
      "r125",
      "r126",
      "r143",
      "r148",
      "r149",
      "r155",
      "r157",
      "r159",
      "r214",
      "r215",
      "r271"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenueFromContractWithCustomerPolicyTextBlock",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue {1}",
        "terseLabel": "Revenue",
        "documentation": "Disclosure of accounting policy for revenue from contract with customer."
       }
      }
     },
     "auth_ref": [
      "r71",
      "r206",
      "r207",
      "r208",
      "r209",
      "r210",
      "r211",
      "r212",
      "r213",
      "r387"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenue"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue",
        "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts."
       }
      }
     },
     "auth_ref": [
      "r71",
      "r198",
      "r199",
      "r200",
      "r201",
      "r202",
      "r203",
      "r204",
      "r205",
      "r217"
     ]
    },
    "us-gaap_Revenues": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "Revenues",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails",
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net sales",
        "documentation": "Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss)."
       }
      }
     },
     "auth_ref": [
      "r93",
      "r97",
      "r125",
      "r126",
      "r143",
      "r148",
      "r149",
      "r155",
      "r157",
      "r159",
      "r163",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r260",
      "r273",
      "r446"
     ]
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureInventoriesInventoriesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventories {3}",
        "terseLabel": "Inventories",
        "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process."
       }
      }
     },
     "auth_ref": [
      "r6",
      "r35",
      "r36",
      "r37"
     ]
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Segment Reporting by Segment",
        "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss."
       }
      }
     },
     "auth_ref": [
      "r17",
      "r18",
      "r19",
      "r21"
     ]
    },
    "dei_Security12bTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "Security12bTitle",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of 12(b) Security",
        "documentation": "Title of a 12(b) registered security."
       }
      }
     },
     "auth_ref": [
      "r417"
     ]
    },
    "dei_SecurityExchangeName": {
     "xbrltype": "edgarExchangeCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "SecurityExchangeName",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Security Exchange Name",
        "documentation": "Name of the Exchange on which a security is registered."
       }
      }
     },
     "auth_ref": [
      "r419"
     ]
    },
    "us-gaap_SegmentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SegmentDomain",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segments",
        "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity."
       }
      }
     },
     "auth_ref": [
      "r121",
      "r124",
      "r125",
      "r126",
      "r127",
      "r128",
      "r129",
      "r130",
      "r131",
      "r132",
      "r133",
      "r134",
      "r135",
      "r143",
      "r144",
      "r145",
      "r146",
      "r147",
      "r148",
      "r149",
      "r150",
      "r151",
      "r153",
      "r159",
      "r169",
      "r170",
      "r171",
      "r172",
      "r173",
      "r174",
      "r175",
      "r176",
      "r177",
      "r179",
      "r180",
      "r284",
      "r285",
      "r286",
      "r287",
      "r288",
      "r289",
      "r290",
      "r291",
      "r292",
      "r293",
      "r294",
      "r399",
      "r423",
      "r464"
     ]
    },
    "srt_SegmentGeographicalDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "SegmentGeographicalDomain",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical"
       }
      }
     },
     "auth_ref": [
      "r157",
      "r158",
      "r313",
      "r314",
      "r315",
      "r366",
      "r368",
      "r371",
      "r373",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r389",
      "r402",
      "r409",
      "r449",
      "r464"
     ]
    },
    "fil_SegmentOperatingprofit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.chicagorivet.com/20240331",
     "localname": "SegmentOperatingprofit",
     "crdr": "credit",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment operating profit",
        "documentation": "The net result for the period of deducting segment operating expenses from segment operating revenues."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SegmentReportingDisclosureTextBlock",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReporting"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting",
        "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments."
       }
      }
     },
     "auth_ref": [
      "r120",
      "r121",
      "r122",
      "r123",
      "r124",
      "r136",
      "r147",
      "r151",
      "r152",
      "r153",
      "r154",
      "r155",
      "r156",
      "r159"
     ]
    },
    "us-gaap_SegmentReportingPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SegmentReportingPolicyPolicyTextBlock",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting {1}",
        "terseLabel": "Segment Reporting",
        "documentation": "Disclosure of accounting policy for segment reporting."
       }
      }
     },
     "auth_ref": [
      "r137",
      "r138",
      "r139",
      "r140",
      "r141",
      "r142",
      "r157",
      "r396"
     ]
    },
    "fil_SellingAndAdministrativeExpensesUnallocatedCorporate": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.chicagorivet.com/20240331",
     "localname": "SellingAndAdministrativeExpensesUnallocatedCorporate",
     "crdr": "debit",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Selling and Administrative Expenses",
        "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and adminstrative expenses"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShortTermInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShortTermInvestments",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Short-term investments",
        "documentation": "Amount of investments including trading securities, available-for-sale securities, held-to-maturity securities, and short-term investments classified as other and current."
       }
      }
     },
     "auth_ref": [
      "r58",
      "r59",
      "r429"
     ]
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SignificantAccountingPoliciesTextBlock",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Policies",
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity."
       }
      }
     },
     "auth_ref": [
      "r48",
      "r96"
     ]
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementBusinessSegmentsAxis",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segments [Axis]",
        "documentation": "Information by business segments."
       }
      }
     },
     "auth_ref": [
      "r73",
      "r121",
      "r124",
      "r125",
      "r126",
      "r127",
      "r128",
      "r129",
      "r130",
      "r131",
      "r132",
      "r133",
      "r134",
      "r135",
      "r143",
      "r144",
      "r145",
      "r146",
      "r147",
      "r148",
      "r149",
      "r150",
      "r151",
      "r153",
      "r159",
      "r169",
      "r170",
      "r171",
      "r172",
      "r173",
      "r174",
      "r175",
      "r176",
      "r177",
      "r178",
      "r179",
      "r180",
      "r284",
      "r285",
      "r286",
      "r287",
      "r288",
      "r289",
      "r290",
      "r291",
      "r292",
      "r293",
      "r294",
      "r399",
      "r423",
      "r464"
     ]
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementEquityComponentsAxis",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Components [Axis]",
        "documentation": "Information by component of equity."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r12",
      "r72",
      "r90",
      "r91",
      "r92",
      "r100",
      "r101",
      "r102",
      "r104",
      "r109",
      "r111",
      "r119",
      "r164",
      "r165",
      "r195",
      "r223",
      "r224",
      "r225",
      "r238",
      "r239",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r261",
      "r262",
      "r263",
      "r264",
      "r265",
      "r266",
      "r267",
      "r302",
      "r303",
      "r304",
      "r311",
      "r362"
     ]
    },
    "srt_StatementGeographicalAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "StatementGeographicalAxis",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]"
       }
      }
     },
     "auth_ref": [
      "r157",
      "r158",
      "r313",
      "r314",
      "r315",
      "r366",
      "r368",
      "r371",
      "r373",
      "r374",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r389",
      "r402",
      "r409",
      "r449",
      "r464"
     ]
    },
    "us-gaap_StatementLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementLineItems",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPoliciesPolicies",
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueTables",
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails",
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r100",
      "r101",
      "r102",
      "r119",
      "r271",
      "r307",
      "r312",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r325",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r336",
      "r338",
      "r339",
      "r340",
      "r341",
      "r342",
      "r344",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r362",
      "r410"
     ]
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOfCashFlowsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Condensed Consolidated Statements of Cash Flows (Unaudited)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOfFinancialPositionAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Condensed Consolidated Balance Sheets (Unaudited)",
        "verboseLabel": "Condensed Consolidated Balance Sheets (Unaudited) - Parenthetical"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOfStockholdersEquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Condensed Consolidated Statements of Shareholders' Equity (Unaudited)",
        "verboseLabel": "Condensed Consolidated Statements of Shareholders' Equity (Unaudited) - Parenthetical"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementTable",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureAccountingPoliciesPolicies",
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueTables",
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails",
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement",
        "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed."
       }
      }
     },
     "auth_ref": [
      "r100",
      "r101",
      "r102",
      "r119",
      "r271",
      "r307",
      "r312",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r325",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r336",
      "r338",
      "r339",
      "r340",
      "r341",
      "r342",
      "r344",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r362",
      "r410"
     ]
    },
    "us-gaap_StockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited",
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total shareholders' equity",
        "totalLabel": "Total shareholders' equity",
        "periodStartLabel": "Beginning Balance",
        "periodEndLabel": "Ending Balance",
        "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r29",
      "r32",
      "r33",
      "r50",
      "r327",
      "r343",
      "r363",
      "r364",
      "r404",
      "r416",
      "r432",
      "r439",
      "r454",
      "r467"
     ]
    },
    "us-gaap_StockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockholdersEquityAbstract",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shareholders' Equity"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TableTextBlockSupplementAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TableTextBlockSupplementAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Tables/Schedules"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TextBlockAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TextBlockAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Details"
       }
      }
     },
     "auth_ref": []
    },
    "dei_TradingSymbol": {
     "xbrltype": "tradingSymbolItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "TradingSymbol",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Symbol",
        "documentation": "Trading symbol of an instrument as listed on an exchange."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TreasuryStockCommonMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TreasuryStockCommonMember",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Treasury Stock, Common",
        "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury."
       }
      }
     },
     "auth_ref": [
      "r25"
     ]
    },
    "us-gaap_TreasuryStockCommonShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TreasuryStockCommonShares",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Treasury Stock Shares",
        "periodStartLabel": "Treasury Stock Shares",
        "periodEndLabel": "Treasury Stock Shares",
        "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury."
       }
      }
     },
     "auth_ref": [
      "r25"
     ]
    },
    "us-gaap_TreasuryStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TreasuryStockValue",
     "crdr": "debit",
     "calculation": {
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": -1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedBalanceSheetsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Treasury stock, 171,964 shares at cost",
        "negatedLabel": "Treasury stock, 171,964 shares at cost",
        "documentation": "The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r25",
      "r26"
     ]
    },
    "country_US": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/country/2023",
     "localname": "US",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "UNITED STATES"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Diluted",
        "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period."
       }
      }
     },
     "auth_ref": [
      "r113",
      "r118"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "presentation": [
      "http://www.chicagorivet.com/20240331/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basic",
        "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period."
       }
      }
     },
     "auth_ref": [
      "r112",
      "r118"
     ]
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "SubTopic": "230",
   "Topic": "830",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1"
  },
  "r1": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "SubTopic": "405",
   "Topic": "942",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481071/942-405-45-2"
  },
  "r2": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28"
  },
  "r3": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28"
  },
  "r4": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "360",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1"
  },
  "r5": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "SubTopic": "10",
   "Topic": "505",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2"
  },
  "r6": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1"
  },
  "r7": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r8": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r9": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.20)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r10": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.21)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r11": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.29,30)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r12": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r13": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "12",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12"
  },
  "r14": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "13",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13"
  },
  "r15": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15"
  },
  "r16": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-4"
  },
  "r17": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r18": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25"
  },
  "r19": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "30",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r20": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "330",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB TOPIC 5.BB)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480581/330-10-S99-2"
  },
  "r21": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "20",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r22": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "360",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1"
  },
  "r23": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "360",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1"
  },
  "r24": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "460",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-8"
  },
  "r25": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481549/505-30-45-1"
  },
  "r26": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481520/505-30-50-4"
  },
  "r27": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "942",
   "SubTopic": "825",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480981/942-825-50-1"
  },
  "r28": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(28))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r29": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(29))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r30": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r31": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r32": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r33": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(31))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r34": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(32))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r35": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r36": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r37": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r38": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-03(13))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-1"
  },
  "r39": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r40": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03.1,2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r41": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03.2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r42": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03.9)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r43": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "12",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12"
  },
  "r44": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13"
  },
  "r45": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24"
  },
  "r46": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25"
  },
  "r47": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28"
  },
  "r48": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "235",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//235/tableOfContent"
  },
  "r49": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "275",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//275/tableOfContent"
  },
  "r50": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 4.E)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480418/310-10-S99-2"
  },
  "r51": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1"
  },
  "r52": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "450",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//450/tableOfContent"
  },
  "r53": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.3-04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1"
  },
  "r54": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r55": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r56": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r57": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r58": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r59": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r60": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r61": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r62": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r63": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.20)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r64": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28"
  },
  "r65": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Subparagraph": "(c)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13"
  },
  "r66": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "SubTopic": "20",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2"
  },
  "r67": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "270",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482989/270-10-45-6"
  },
  "r68": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1"
  },
  "r69": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9"
  },
  "r70": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h))",
   "SubTopic": "10",
   "Topic": "235",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r71": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//606/tableOfContent"
  },
  "r72": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6"
  },
  "r73": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1"
  },
  "r74": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7"
  },
  "r75": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1"
  },
  "r76": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-5"
  },
  "r77": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1"
  },
  "r78": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r79": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(13))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r80": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(14))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r81": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r82": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r83": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r84": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r85": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r86": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r87": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A"
  },
  "r88": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B"
  },
  "r89": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-1"
  },
  "r90": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4"
  },
  "r91": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5"
  },
  "r92": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6"
  },
  "r93": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r94": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r95": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24"
  },
  "r96": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-1"
  },
  "r97": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r98": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r99": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r100": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23"
  },
  "r101": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24"
  },
  "r102": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5"
  },
  "r103": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1"
  },
  "r104": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1"
  },
  "r105": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11"
  },
  "r106": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11"
  },
  "r107": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-3"
  },
  "r108": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4"
  },
  "r109": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7"
  },
  "r110": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8"
  },
  "r111": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9"
  },
  "r112": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10"
  },
  "r113": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "16",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-16"
  },
  "r114": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-2"
  },
  "r115": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "60B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B"
  },
  "r116": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "60B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B"
  },
  "r117": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-7"
  },
  "r118": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1"
  },
  "r119": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "272",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-1"
  },
  "r120": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//280/tableOfContent"
  },
  "r121": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-15"
  },
  "r122": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21"
  },
  "r123": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21"
  },
  "r124": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r125": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r126": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r127": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r128": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r129": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r130": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r131": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r132": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r133": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(j)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r134": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "25",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25"
  },
  "r135": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "25",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25"
  },
  "r136": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "26",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-26"
  },
  "r137": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "29",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-29"
  },
  "r138": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "29",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-29"
  },
  "r139": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "29",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-29"
  },
  "r140": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "29",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-29"
  },
  "r141": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "29",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-29"
  },
  "r142": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "29",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-29"
  },
  "r143": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r144": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r145": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r146": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r147": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31"
  },
  "r148": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r149": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r150": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r151": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r152": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r153": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r154": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "34",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-34"
  },
  "r155": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "40",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40"
  },
  "r156": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41"
  },
  "r157": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41"
  },
  "r158": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41"
  },
  "r159": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "42",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-42"
  },
  "r160": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-2"
  },
  "r161": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9"
  },
  "r162": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481830/320-10-45-11"
  },
  "r163": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3"
  },
  "r164": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4"
  },
  "r165": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5"
  },
  "r166": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//330/tableOfContent"
  },
  "r167": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-1"
  },
  "r168": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-4"
  },
  "r169": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r170": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r171": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r172": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r173": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r174": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r175": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r176": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r177": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r178": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3"
  },
  "r179": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1"
  },
  "r180": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 5.P.4(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2"
  },
  "r181": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4"
  },
  "r182": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9"
  },
  "r183": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1"
  },
  "r184": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.Y.Q4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1"
  },
  "r185": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r186": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r187": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r188": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r189": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r190": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r191": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r192": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r193": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r194": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13"
  },
  "r195": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.3-04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1"
  },
  "r196": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-1"
  },
  "r197": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-3"
  },
  "r198": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10"
  },
  "r199": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12"
  },
  "r200": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12"
  },
  "r201": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12"
  },
  "r202": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12"
  },
  "r203": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12"
  },
  "r204": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13"
  },
  "r205": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-15"
  },
  "r206": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-17"
  },
  "r207": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-18"
  },
  "r208": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-18"
  },
  "r209": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-19"
  },
  "r210": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20"
  },
  "r211": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20"
  },
  "r212": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20"
  },
  "r213": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20"
  },
  "r214": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-4"
  },
  "r215": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5"
  },
  "r216": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8"
  },
  "r217": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-9"
  },
  "r218": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1"
  },
  "r219": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5"
  },
  "r220": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r221": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r222": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r223": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r224": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r225": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r226": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//740/tableOfContent"
  },
  "r227": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-25"
  },
  "r228": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-28"
  },
  "r229": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-4"
  },
  "r230": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6"
  },
  "r231": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10"
  },
  "r232": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14"
  },
  "r233": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "17",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17"
  },
  "r234": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-19"
  },
  "r235": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-20"
  },
  "r236": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21"
  },
  "r237": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9"
  },
  "r238": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8"
  },
  "r239": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(d)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8"
  },
  "r240": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB TOPIC 6.I.5.Q1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r241": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB TOPIC 6.I.7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r242": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.Fact.1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r243": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.Fact.2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r244": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.Fact.3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r245": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 11.C)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2"
  },
  "r246": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "270",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1"
  },
  "r247": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2"
  },
  "r248": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25"
  },
  "r249": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25"
  },
  "r250": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3"
  },
  "r251": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3"
  },
  "r252": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r253": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r254": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r255": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r256": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r257": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(i)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r258": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r259": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r260": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28"
  },
  "r261": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-17"
  },
  "r262": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20"
  },
  "r263": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20"
  },
  "r264": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20"
  },
  "r265": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20"
  },
  "r266": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-1"
  },
  "r267": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2"
  },
  "r268": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3"
  },
  "r269": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "910",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482546/910-10-50-6"
  },
  "r270": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "SubTopic": "330",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482105/912-330-50-1"
  },
  "r271": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "924",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 11.L)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479941/924-10-S99-1"
  },
  "r272": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(27))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r273": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479557/942-235-S99-1"
  },
  "r274": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480842/942-360-50-1"
  },
  "r275": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r276": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r277": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(21))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r278": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r279": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r280": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(8)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r281": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r282": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r283": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r284": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r285": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r286": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r287": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r288": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r289": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r290": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column G))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r291": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column H))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r292": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column I))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r293": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column J))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r294": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column K))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r295": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2"
  },
  "r296": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2"
  },
  "r297": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2"
  },
  "r298": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2"
  },
  "r299": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2"
  },
  "r300": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2"
  },
  "r301": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-7A"
  },
  "r302": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r303": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r304": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r305": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r306": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r307": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3"
  },
  "r308": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(h)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3"
  },
  "r309": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-11"
  },
  "r310": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13"
  },
  "r311": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4"
  },
  "r312": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4"
  },
  "r313": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1"
  },
  "r314": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-2"
  },
  "r315": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6"
  },
  "r316": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6"
  },
  "r317": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6"
  },
  "r318": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r319": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r320": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r321": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r322": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r323": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r324": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(14))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r325": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(16)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r326": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r327": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r328": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r329": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(2)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r330": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r331": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r332": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r333": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r334": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r335": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r336": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r337": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r338": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r339": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r340": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r341": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r342": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.6-05(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2"
  },
  "r343": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.6-05(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2"
  },
  "r344": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3"
  },
  "r345": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7"
  },
  "r346": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r347": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r348": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r349": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r350": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r351": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r352": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r353": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r354": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r355": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r356": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r357": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r358": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r359": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r360": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r361": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(1)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r362": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r363": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r364": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r365": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1"
  },
  "r366": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1"
  },
  "r367": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2"
  },
  "r368": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2"
  },
  "r369": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3"
  },
  "r370": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3"
  },
  "r371": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3"
  },
  "r372": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r373": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r374": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "948",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-29(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479851/948-310-S99-1"
  },
  "r375": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "954",
   "SubTopic": "450",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480598/954-450-50-1"
  },
  "r376": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r377": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r378": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r379": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r380": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r381": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r382": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r383": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r384": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r385": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "976",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482856/976-310-50-1"
  },
  "r386": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "978",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482707/978-310-50-1"
  },
  "r387": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)",
   "SubTopic": "10",
   "Topic": "235",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4"
  },
  "r388": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13H",
   "Subparagraph": "(a)",
   "SubTopic": "40",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H"
  },
  "r389": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13H",
   "Subparagraph": "(b)",
   "SubTopic": "40",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H"
  },
  "r390": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1"
  },
  "r391": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1"
  },
  "r392": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(g)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1"
  },
  "r393": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4"
  },
  "r394": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r395": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31"
  },
  "r396": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482785/280-10-55-47"
  },
  "r397": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481933/310-10-55-12A"
  },
  "r398": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "340",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "05",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482955/340-10-05-5"
  },
  "r399": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482548/350-20-55-24"
  },
  "r400": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13"
  },
  "r401": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91"
  },
  "r402": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91"
  },
  "r403": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480547/715-80-55-8"
  },
  "r404": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481372/852-10-55-10"
  },
  "r405": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479401/944-30-55-2"
  },
  "r406": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-29F"
  },
  "r407": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1"
  },
  "r408": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6"
  },
  "r409": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1"
  },
  "r410": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1"
  },
  "r411": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1"
  },
  "r412": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2"
  },
  "r413": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3"
  },
  "r414": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r415": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10"
  },
  "r416": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12"
  },
  "r417": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r418": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r419": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r420": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-Q",
   "Number": "240",
   "Section": "308",
   "Subsection": "a"
  },
  "r421": {
   "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"
  },
  "r422": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "405"
  },
  "r423": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4H",
   "SubTopic": "40",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H"
  },
  "r424": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(13))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r425": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r426": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r427": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r428": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r429": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r430": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28"
  },
  "r431": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28"
  },
  "r432": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r433": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r434": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23"
  },
  "r435": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24"
  },
  "r436": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5"
  },
  "r437": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-15"
  },
  "r438": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481830/320-10-45-11"
  },
  "r439": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3"
  },
  "r440": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "340",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483032/340-10-45-1"
  },
  "r441": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-5"
  },
  "r442": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3"
  },
  "r443": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "410",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481931/410-30-50-10"
  },
  "r444": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9"
  },
  "r445": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1"
  },
  "r446": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r447": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r448": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B"
  },
  "r449": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5"
  },
  "r450": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480060/805-50-25-1"
  },
  "r451": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "30",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480027/805-50-30-1"
  },
  "r452": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "30",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480027/805-50-30-2"
  },
  "r453": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r454": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28"
  },
  "r455": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7"
  },
  "r456": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7"
  },
  "r457": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3"
  },
  "r458": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3"
  },
  "r459": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3"
  },
  "r460": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4"
  },
  "r461": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4"
  },
  "r462": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4"
  },
  "r463": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r464": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479432/944-30-50-2B"
  },
  "r465": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4"
  },
  "r466": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r467": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r468": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r469": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1"
  },
  "r470": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2"
  },
  "r471": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3"
  },
  "r472": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>41
<FILENAME>0001193125-24-136148-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001193125-24-136148-xbrl.zip
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
MT7M"9^?Y7:A;9;K3QI@&1'?C!'QB8+0,<PM96(2!DWQ\CI_^!U!+ P04
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
M$M0?,.=O5W]WC@\//S6/#X]/G/]V.K]?';4/?[O^]?BW?UUW_SC[]8___._
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
M^ONCC< !:QAGT6I!TD)^ER@TO9T3A&<S)M&,"K'P4)3E18X82017_C.4U^9
M4\H6O\/++/]CCI;RNZ^01LH)NZ<1X5]S.$>?^7#Q)Y<<9<6<?^_-2$H8IRR&
M8J'GVIS$;LX)BU#&8L*JC]&F=3&+ZA_POUH,4HTXBC+^:;$L#NO9EX]/6;8
MH+R6*@-.[5''Y2Z4S>OOK2G.[Z2ZJ_QPAO%2? 2^/"))D=<_D=_4<ENH?O K
MW\!.<3[G'_'WE&]/KQ\_YB2^2-_0E'^ "?$C+C,M*,EW$-R#0-^MH+^LD$V
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
M<@:,6Q1$Y$O1>W*&"ZS>AJS#?40J3')X"5&L&2#! 54L L&1JR54\0CKE R
MGEN&!7)O'A=W6:* R_;O(?A0<H)=.I $44DQH/E7:MJ<<+U1QZW]:WKA[ SR
M5N?7VRNE4>7I ,T$U4 @8%996Q^WW\LBNF=B@K\^?OGR1$[RE"9\0XG?8_:)
M%$KGB&I$W^DU<(/M]3$J:7J(&0!EC*MT!!DG5LAZ+7+J<GFOKI@3M!'] ,4K
M)C8H\6.:QC22Q[."+DC5>N1Y((@U6*B&JPTT^VD;\2>2Q+?9>US(KI]5]T_]
M'2GWY[TWC;!)"EDM5UR8.19U:;,IRKMVH]ZO:J]*U5(RDS=)!M%P'YM_9RM9
MNTDX874<ET<<4[$9XN0*T_@BK;I[&#WQYF? #A 7B4!^D#4#)#@<TA15/ +#
MG9,E6HX1Y\D99YMG5;RIT:#Q<E7D!4[%9[-N<[<\!=[2W:0";>0UBYW6FPTV
M@<'-T2BMS:W#7.T-<M8.KY:'A@"<WSZO.KP%V^K5S20N:-MKPU=]Z:M-)2++
M]=5N- :L\Z:7&!K?:M9"B[9*O7WU(2L(>AE:N9)>5NI0%\TRL:-@]SV.YC0E
M[+%Y,\SD1S(\ $6E71;8YIC%JTA\%LGVH9*XQ&(F;JX$!CV[*79QYC@O ][#
M></AS+\XI2?D#?_9+H+,8WW<Q=%*X.4V3DD=E>21I!\(:IQLH+J28YZ&P8);
M-W.2)'QC7.+T41O2VAH$#V2I>'H(7TFRJ*(;$!ST2K<C55I+CYGE]8:++MZ.
MXC7X,RWF=5/U\X<H6<55N3G^O_@6/VA>37TH><H=ZR,]!'T56\]%<@=6QMP6
MKN0=R!+R8!%-AEUO=(YS;MZ^4F YM.A&@T_*9BE 7X&"='@E=BP:MT[ #H8?
M-8)S.3VC]S0F:9PWLOHL81O-0[YB-6:90*=946PSKHFC):8FQ\H>Y'>+PG13
M8Y]1%[,I=*$6!WR-T_&#%,+4_  JI(E?/W[,Q=V+"QGL$CN^2!(RQ3D[$ #W
M"^DL*S1;/A(H7%;\T-UC%004@7:\9N9Q>0VCH;$ I0\U]['\NINJU7>E'W(#
M6Y:6SZ >A,9;IEZ]N +#4UED6@#E_Q>$;=]<P%D>^RZ-:YC5^(C'VS.#!%BW
MK\V4+ X<PZO[TJ5,%;LI,"NT'V8-M2JM@E7D/-5_7W928\^7EYQCW<X+9NQF
M"&]HBM.(XN0JRV7ZAWM3!/VC'ILC6.6#[03*)@FO,1\5$>&F%0U'W%HC[%O'
M>\+N,E-?J8ZJHD-QHY#+-R>R$$)@B["+^0S=(=PP/$!,H[K94<92_D8PXUOB
M&1=+$=G0#H7$-VS\(<NJBGD)JB(3.A#DN&C=#',XF;UW=KYPV"[NDL=UU%6;
MI:\;"<G6MW ')4E6I-&:MJ?L?0\R=\SB;ZORM++Y+19K9O6[@&RPZD!5DH5(
M=;DA[)Y&)%>V/36/A50/LDK@(8=$IHU4U ,!B9/JS9)";M8?Y_XTSFE^.:VN
M<_,U688WW"JI.3X,OE'=248/5_3%UE0'JSP76_.OBS&RJU HD$73SR"MV^+=
M$3A.Y:YV%TS+B=#T!+ABEUT:4"0A*X*#E8/*K<I<CC,P"H#>\K?!NRS/+U,N
MUK(Z57&@FQJ7FI^!@LA)(@B,! .4I2B6Y/G))YMNLD4#@Y>3,78!YCX_(Y9-
M%0+5>3$T7?$MM&HRFJ7Y%6%G-%GQ;W-3*:CN=/P46NTA.2@7M:0G6OH@ODWD
MXJ2"\@"K0O6VCKK8:=^)#03#K\DT8V1=;5%^:8N@4=0;S7J*P^/:J@T$X8(Q
MNI,<7 MO!JJA,2.@AYIA+F.KJ;HO:#=LCQ1/S8O+:96YJ0V@-L? (Z8*CK#
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
MB]+,31WX^_W3CU_4/^'_=X=S\N,7_P=02P,$%     @ QX"J6#)T5P=.%@
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
MGN24-@OA:Q*T2UO=P@E09W.8?QVL&Z&EC-2912=+PM:05",X6;;7(DHN9_.
M+C&^Q<FH=],^@)WJ="X198""16V>*%8LKL$5+.\21QJK+1KS95'MU<G'LBD7
MWJ/L?2M(,DCH$ELF.%@4Z#>N2XY7(O/:\Z.S0_MJYNRA;)>1GJY/<HBYVFZ8
MM8[7+KS6=[=:BC.DQ2K15[<L5R79ME]<AQ"EI18-W',[6!/EX'V[)BE<8D9K
MN4W#=-\G*SU&B/A7X0#-283*QQQ52;O$#&BQ12W8+8X0";%_B5B8!.#S(9\Q
M\0C4[1@D=(DK$QPL&J#?,XQXS):5_8Y"T"5:5';N/D!_LQKFA7B23&_8,M S
M'N Y1:'*SDZ$&*O&MUN&31P>M5<CTHFXF1QQD=6>)[DYC8;RY#<<>L+L(>%>
M0$6+A2N\MGIYM%W?MXN@U<1)/RJR<-O\*$%NBB.1>]#@'OKB=RW?4%]4]KB[
M?J\S#@+<&Y8HZB>#HQ%FR?E-1I,08&(W6QM39"R:M"BJO#IYJQ]'4U$)_XU]
M(Q(W$G6!O$TD+)K'4*E:/=M4E:H[M!G,/[6TXSB;)ZO9;)JD=),_(TPLFO;8
M.*>PLK74I7">,]-VLI5UUAMZ7G$>F_.42G>$H[7M%FUVKG'4J5&2CC!ET'W]
MP0:7-'O+;\8W<[RZ3N[ 1[I5?=,:5[1*T>8/SI K\S.M*CQ/2+J%X- "AS&X
MA"1[W6[5KP"W&.59&V21%SB@7+1:J6I@RYN7<0;ODFD6>7')#L@1HV,PP)F7
M< ;P@EFP\^709'O:?(>3R\>Y;.>AQFA3SAG2%"9:Y'-EVJTLNH8W4*LDW2,A
M;V8GUH(F1_Y\HB$M6I@6-HA+?2)W:*TPWB*'[*G@O1?6KL)EL=#X:0![@<>4
MX6R;)^9#\0N/B*<=2&Z7HS,,[P0;[. Y5,$SR])2?8%##(]K(&G'"%>8>Z!;
MN[>AY!..*KO+HHPS\)=,@V_L=J@&K5?]K2>]*QQT4-P9$F&##W4=^&%Z1*'_
M!>+$TX5OZN;2+HE51;%>UU?"QZ)9#R/=AR2(Y73>KNP6\ND8OT6,+)IB^163
MR51HUE\(;2?I[=4WXXUI]J2  NS6R\.9YK<F-$"U;:7> JKG2Z%!)*EN+JXS
M"\,#<-M*C<T%PX9D07P<^ED[-<1>('X8Q&_AI,ZP: 8$0)T5*U;S$;!$[<)"
M[.;"A+IO6QDNU"G<XNK5+;8%FZ1M8==+JM:]/ *F2O>5D#4K"^IN?"F::M'@
M.U-M986\?I>&R3K]1P)>5Z--8PE'A5*E)$-ML47<E!0<TADB(301H92UA M=
MV2K,1:@-MHB2XC+7CUB.Z8S6^::BCA&B-M<BSS(W/-.2L2GG&!,*0RU:40WL
M;]=2HD_C&#T5 %@4Q"]O;]=R! @[1@YDLD5+I N[VU=U74L,+.\8-QK#+0K(
M9V8)EQ1?B5\KA\9/@I804CT>SMEF40_O\N$(4*'9[E"$+:X/GF-&J)S48%&+
M.^0[N+= 2^DV.PFV.)NN?7(5C??*8/->*Y5W@5:-M7M;7]L^IZZM5S'CSFBI
M2BOC\2RJ &#]]-X%G'/6' ]G^G+N!&=*Q?=W,-.J2;L,VR)PSR,01TBM,&%_
MRUW;IG=O8Q!'B-7IO[_+9!6LNA#$/OPY3%LIXEIXVYJ3FKH2Z^[V<IJMX^([
M+:ZQ;6W- /'I^X!^:W#GO>*35C8U"CU;;%0R;<S;DLTD;?CE4HL1H[*B^!?+
MSUS>\Y=M5NQ[D:A"R8&;>K.VR,B:Y@6DKN3KUT;*HB4&KDW ;%\P:T_0M',W
MF__/F*_.+KVGM]BCH4<"7-#WGNZG:A[D4UTH'8?AP*(H5_Y296@B,"_2+JF'
MK!+%ZVSSJ%C4)GQ ))16WH1#PN?IX5(W8^V]MOHT_QF$5N!F584LW:1LM*.Z
M*M5_!LN5V%FT<DWH*"?4I+N9_,P9FZ[AJCZBRS2#+O3$=?"RFN;U%;2B'F"R
MT&Q!,$K:^GZFFH583ZD*&XMZWTV%Y898:=ZO))IF%VS*3L684SB';E&K06I_
MER9BQG%[)Z"4++X*%P)CRN +,/5INL5_ 0VK&^CDO*:GWDDWM#9,W"TFU?CL
M[UH=JRIQZ<+XVEWU.EVWBL &*OL[I<XJ]N%;Z(T+@B:+;I4)'5;[NVS-JN*1
MM(2B+K!XN[(!I>]6P0!1VM_)=U:5BFQTZR_D953RXK$A3N:<S$N&+H]NE0XM
M6GM;5M1F"3&?_]@Y<-J)F9XZ>'7B,D? 8.DQ\7U$V'49=2+"KD7*HKE],5Q.
M)\'[WK]BPK PQ(^ESECK9E:GL[+>&Q3@PI[_:G1VWY]FQ=)^89B'L9\<J7>'
M GPS%D]$\Q8M1P$*(]$%RB5L<XD&5")JY-")LE$',9MJ?$[OCRB*66+IB.%Y
M6MCEK;0H"/C-^$\X\.]I*K2\PUXJ;% "MLVY:R5C:X0MFH_<: 7KE@OC])U@
MWQRMW8>*5O0=YKCM/$CL1 FI@U<G[MH #$ZOI-O=F]!EU EO0HN4A3V%/-HU
MW<.0V]=0T3T B:RL\09%5]4G0+ATQ(DP!VOG^MV)8E$'K_VM2&BQ(Y#6RO^E
M9[00/E.RKD;@0SQ1:.4+,3(N/LA)CI)]F.7IVLM'+XC]Y)HP;XK"";X5%>!R
M/,9@)]*P$FYU0$TSU(G9TA27$AI]4;D96PK#DZO#-:6Q.JU[A<@ C[V-;=L_
M*>;@)<">'?G[+ .'/ESCP!MBAX1[ >4QP^GJ$V'7B ;$$SWVEAM>M5DVN*%5
MJT?SYP*ME;D7MEV(CWRM<!1U*9H_-H=,0C(6D(?1)IB9?H EAHG;;1P,""J<
MLF,(2*N[W9]LNB7\JYRS_1QZF,GC4Z-]U&]UKJU4<;4JQUI>\UP+@9Y<4"X)
MDX@JM(-& "9)G:KA9F!84K_E5 R)LLA,<J'8!(=[Z<5U>;=2UW4*'6M\+?6O
M\00%'U$D5W*5L:RJ\F9IG:KSAG#L[4#?T@*ZYH8#>('#&.\^ $CS::?+3S]^
MK/(U;PQ(8%M?/%G>/595ZXV3.U7QS4&QI,//77J^<RW.Y]5*3<XK<*S-VUT1
M;SY4UR9QJM;JC;>FIF9;-/=04Y_R:JFF/BEPK*DU:^H*NF6=FJI)XEA-U1GO
M_'CZ#D^D.WJ+YY1)CV'GBKZ182NU?4.+8Y6O-VM>PL^\YIND=*H!,(+"DAY[
M<T+_@!$QVR)CK47(D@\O3>LY)'V\][BRYE8 W>9-QYQ%.<S%7T]XBS^^W,JE
M-XJ;C(OO+%EDL'%#6\D"&[!47DI8?ML.GDJ^"S#J+Q9L#,B/)"2S> 9"67QO
M(9@E PZ]SZL*3O2HA[/PWD8XBP98M+3]>.UE:SL6+Q G_&9<&FXM2UTQ0(=A
M8DLHVBA<>9I,<3C4C$"[RRD&0FL2R=],5U'D4KA K];B3AQ(J%E[8%:9:V3@
M!N/F>.SM6LTV"T!%I-"L$-3,Q(6"4!>7KIQLN I F=$.BKM ,&QK1XXI3",4
MIE0"XFY0"=G:B2,%RW/-=<;:9FE=(-D0A4,=%]CT6C;Q $TF3&X>3BZA2!\G
M#N,>5KJ;?*3-57!ZS9JN@<EGLT)V%\\%WK(P5DSJ5R8[SNY7-@ZFT%L\S9^>
M4';#[C!;$ ^:\5>*6=(R*R?_U7;9 ;;TWE*U^)#.$"G?6Z67;6\>5E=82L"K
M;-P?^AL]R)@$7RY#_R-B7W&DG,]62=B+I-*>EJ,%687[@.F$H;GL.0.@O8!E
M;6XT-!:VC?UJ@)G7"VPY8-GVRGMEV<DH@ T]</-Q+25%WF#K41*P'$R5218%
M:8[QL=9"DSKWI<IE-TMK"4%:E]T0!4N6R>76@N=^W9/#K<V\[:7OFQH='>QM
MVUQOBOU8'CV<34H.8L;635GE=)UI<@>=<F-D.K=\_LGT\IN+9?ID3\W,]E^V
M8D&^N;K'!FKG!JH,\54XIFR6T/Z$MG%[52\WEYNOFKA9,KK1SZL/<81(<.BX
MPOHK%@86UJHUWJX8[@\X[@S8II[;N"=@&\0O8B[\+,[3UH4K9@3-TECB-5:[
M]6J+;>)FI9ARAE M8PGVNK*DB+<W-#/X'G'1V&,&S@R6!!P!4V7:_F8(E4C*
M6Y!F#\$RN^H&A!22= A;T-A#SP4>0[Z5(=_& C?'D.\A6^9^'-$9E?>KP0U)
M6<1>+-46';A)_B2RK491)64WD$J[6FYYCQ'T%K$_1M /Y:)P[#V?T,59LL^,
M+5<LI'\\D9 ^^/+YKH1X[H7E\.9-L"B6+IJZSUS9=*LD+,=8:91%T?/CPH7U
MWB';MH-E%\=(QTO\Y]^C1X";;7*RA+R-8E=C8Y@:(>=#FNK5 OL*&^ASMVAY
MQ#%,8+[Q[!9]^R@J%",H@-IOM:P#00/ 2(OFIS,-?Z7LZU687(#,*WDH"KM$
M1,E,BX:.F8KO24CX%/L?*/4KF2@*N\1$R4R+QI69BA\8K:X+*R&7D$_-LF@X
MF:DF[Q9;G:(A,&0+\+I130*7F%"8N_NN<BLNE,U,_(2A04A!Q"76$I/@+>.V
MKR'<UVA\AT^[LHKP.(X_+O<Y+O>Q9S+LN-SG4-@?E_L<E_L<E_LTV%(,*!.C
M#6&4-EI4EG*$!-!(BWS.8_2HM:FN-#8" 9Z]M@3FC0*BB//8-0P98H&71Q*T
M ) +(BX 7;3IP-UEVK#=S+$\U#6<S!D=D[(7IA&T&5"=??OK( %8@T#&/$._
M[\_D_&]R9NX"7S[.<<@Q_RR^FN2&_:SK4(*^13;V4[(--A9UJ%=AA 6PD;#@
M)IIBMCHY$YS\4PK;3%*5G?#,;>-4C- R&9?=T[XGQL ,CQ@553U:C@(42L6S
MD3% 3XT,7*"L#AZ=. LT/6F>WV(/DX4<)G["4;J/'J!<F\0%DO4V[^W SP5F
M#[3]\WJ=B*O4/)=7$UAYW4HS"K42,/C:)"Z0H;=93<X;UVI1TF_+6:((\D'S
M$B[05K (\$1?5 4GTQ?RGP?$\<_?_S]02P,$%     @ QX"J6.2*[?$89@
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
M=O$2NR[C P.^_M?]A="E([6\V>SJAUCY1H$##BQY@EY\SYV(@N='*7'?LU\
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
M^/=I/\ND8 VCOZS#1K\YUJ/C.I%#6#U:^M:_O_/[_@XA,CS:D[=>,'W<+G*
MA<4'@(K3DWQ36'C<)%+;H=949,LLK4B.X!M9D\V/U*CTX-^9P$'8*'[@D[IE
M<ZIN:ZW!CNMLMT7-+*Y(O'YZ5(]3?HL3A>)#2[W1,4 ,3*.48JN]["X!4@9C
M8@LOUA/WZ$/+M?"HK4.P:*O%Y&(X<OT)(7>$UM"DS'6%X&$T.KK:$M7C,D_M
MEGERRT?QB-)N=#2Y)9K2X6S#GSFQQ^+P05Y'>#7;X>Q$Y;BW'TPP&QU55D59
M/EX:4!,N%Z[9;2Q#4DS1U-_.3M0?'K$"#[0](,_$&Q-VR0@_SQ3+M_W0>0N[
M4I,C6NUG>EAYU\/Z6SJYZD"B+3<Z2AL=A^+.^CXZ#OL2D.+Q16ET6JHDRL;A
M[$V=/0C,G8+RX90]KCGX8!_>1!L7T45=D<26GN]HY[?M3]22_\7C0 N34VV]
M)4IROAW(M?0T]K'O=._&K$Y:=DRFSYFKMVVFJK!/VM$^U9_QQ1LF_6B8CH;I
M:)C*J#_PAT.'74S'4C#P(+1"O!Y697VX]B,BJ!]KE(I]7\#^ABM?CBA8[Z'6
M5$A+D<6LRM,-R[!J)X'U$[1:R]->5C_2/V^#>%ML&/F]GZ*P]A88]O@]/GUK
M!3?!?81+SO_$2ZEO24!E.5\L%MK3]](N>=]Y)7;S3Q+X,]ZXL7[3_C9C7!4V
MY!QAN]'Q_(5 8>$#860%*!=CDH_J="!A=QP-_,#YD]BYJ,U>WB8*,O/1?=TH
M5]![ZS&:$NY$YE?QKB5_2+L1K&2(IUNPX68<A1&XKJ",6_$A-;-F2'HXNQ>(
MID/BS4Q,WH;X*\:V ?4W')F"PNZ1#>CM3X=S"'Y7'GI39%G#?UEISZ<BUF.)
MJ38ZS>.J:<U633=@OKH[ZUMY6;]/'_9+.+*\^*GDHN2ODI;M=GSYA,_3^-_W
MN.N1U80AJ5(7F^ O_++N>EILKR3?)+\YTM8NO^<?[Z9^2O[18IKS9"/+N;'C
MDIK??KP6<ZVWF&.(I;@L](9T:7NG)3<+KL)P7!GYUSJ-&PZO!-*W)'K)@JRV
M1<E<S.LO);U#!_@Y+]EW=13S3V^MSYAGC*4P 'Q'4]>!!8O5HXL?9!H80SI+
M60?.H=R.9@W\R10O*/QO*RY;+7&U)'65*KS?E<T]<[KHI<R6U-J6S_7/9W6A
M!9R&Y0IX47'3\82>-7(BRSW\:',ZMUN8VI5WQB96!3+@L>XM V3F>"5WW<+0
M#:6B>!31MY.)&NSU83_O2&0Y6/Z/NP"@K</9[!./_((/?.9@[;[3<RJHTVU)
M!CV82)-,46X=#U>O&\>+U_<V;N 054D5#2W?'H[ZNPT/ ;'"<3")U[]D0Q9-
MO94$VA%0-]S3,>E%GW+X8;6HQ:38.*5=B'#A%D+15!1P21?/1_]X]"X.6F *
MQR)9VD)<]E]['<Z4>) <AXO5OPB;<I_/C16O5  ;,FXJU$394$3%.&X^KKD
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
M, ,%FX3"(4BE2T.RH8A*QKF[F\0CTDF[U 1GD7F:C8*2O6=I2BE^+R%(K]_
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
MV$/]Q+%V4E=GX=I'D;HU<B++94DHVXG&P8%DO=?8SEMK0K>E/_C=WG_&3D#
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
MG2_>6N?_+_1X!JZ>$^%O^3K:T.E7LG@)?=!2[![M&_F%_'S$T(0""@F&L=.
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
MZ;O,FL49B"PNQ+K?=P B! C:@XB%V309N*7M*,SPX#RYD@.3!*RPX0G4A/F
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
M;D.O[<^V.O:V46\%[1;+(U;7Q9[?N0,Q"MD%&N[GK$S#7'569DD1>M'$+H+
MI>^=;4NKSJBL(:6+H&IB,@NGIMSH5%834R8X) =;%K8>DPM%WY.1>LN][<$
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
M@G+)2@Q*.+*\65V)#9 \>ITW/YDC_?()VRA)YAB;',\&ZIZJ%&V2 ZK0EQ3
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
MYH.ET Y;N"6O(_:0$S)@B1,#+/,$?0V<$9L_"MW8@?C3(R_+GJ.) N3$BQ5
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
M4^(38MP$I9;TWNN".L01_T=2=/@7$\CQ/Z ,.OZ'EW\ 4$L#!!0    ( ,>
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
M^2=02P$"% ,4    " #'@*I8N<61,G@&  "0-   $               @ $
M    8W9R+3(P,C0P,S,Q+GAS9%!+ 0(4 Q0    ( ,> JECPLY.32P@  ))J
M   4              "  :8&  !C=G(M,C R-# S,S%?8V%L+GAM;%!+ 0(4
M Q0    ( ,> JEA2U79L @H  ,&4   4              "  2,/  !C=G(M
M,C R-# S,S%?9&5F+GAM;%!+ 0(4 Q0    ( ,> JECJMK /FR0  %;6 0 4
M              "  5<9  !C=G(M,C R-# S,S%?;&%B+GAM;%!+ 0(4 Q0
M   ( ,> JE@R=%<'3A8  #." 0 4              "  20^  !C=G(M,C R
M-# S,S%?<')E+GAM;%!+ 0(4 Q0    ( ,> JECDBNWQ&&8  +"A!  /
M          "  :14  !D.# U,3$W9#$P<2YH=&U02P$"% ,4    " #'@*I8
MZJ(/P\(&  !)&0  $0              @ 'IN@  9#@P-3$Q-V1E>#,Q,2YH
M=&U02P$"% ,4    " #'@*I8\HR8H]8&  !_&0  $0              @ ':
MP0  9#@P-3$Q-V1E>#,Q,BYH=&U02P$"% ,4    " #'@*I8+R@9VE(#   R
M"@  $0              @ '?R   9#@P-3$Q-V1E>#,R,2YH=&U02P$"% ,4
M    " #'@*I8;W &S&8#  !U"@  $0              @ %@S   9#@P-3$Q
A-V1E>#,R,BYH=&U02P4&      H "@!_ @  ]<\

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<FILENAME>d805117d10q_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:country="http://xbrl.sec.gov/country/2023"
  xmlns:dei="http://xbrl.sec.gov/dei/2023"
  xmlns:fil="http://www.chicagorivet.com/20240331"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2023"
  xmlns:us-gaap="http://fasb.org/us-gaap/2023"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="cvr-20240331.xsd" xlink:type="simple"/>
    <context id="Y24Q1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="E24Q1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="I240508">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
        </entity>
        <period>
            <instant>2024-05-08</instant>
        </period>
    </context>
    <context id="E23">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="Y23Q1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="Y24Q1_StEqComps-RetainedEarnings">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="E23_StEqComps-PrefStock">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="E23_StEqComps-CommonStock">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="E23_StEqComps-AddPaidInCap">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="E23_StEqComps-RetainedEarnings">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="E23_StEqComps-TreasuryStockCommon">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="E24Q1_StEqComps-PrefStock">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="E24Q1_StEqComps-CommonStock">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="E24Q1_StEqComps-AddPaidInCap">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="E24Q1_StEqComps-RetainedEarnings">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="E24Q1_StEqComps-TreasuryStockCommon">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="E22">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="E22_StEqComps-PrefStock">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="E22_StEqComps-CommonStock">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="E22_StEqComps-AddPaidInCap">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="E22_StEqComps-RetainedEarnings">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="E22_StEqComps-TreasuryStockCommon">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="Y23Q1_StEqComps-RetainedEarnings">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="E23Q1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="E23Q1_StEqComps-PrefStock">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="E23Q1_StEqComps-CommonStock">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="E23Q1_StEqComps-AddPaidInCap">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="E23Q1_StEqComps-RetainedEarnings">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="E23Q1_StEqComps-TreasuryStockCommon">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="Y24Q1_ProductOrService-EndMarket">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:EndMarketMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="Y24Q1_StBusnSeg-Fastener">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="Y24Q1_StBusnSeg-AssemblyEquipment">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="Y24Q1_ProductOrService-Automotive">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:AutomotiveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="Y24Q1_ProductOrService-Automotive_StBusnSeg-Fastener">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:AutomotiveMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="Y24Q1_ProductOrService-Automotive_StBusnSeg-AssemblyEquipment">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:AutomotiveMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="Y24Q1_ProductOrService-Nonautomotive">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:NonautomotiveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="Y24Q1_ProductOrService-Nonautomotive_StBusnSeg-Fastener">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:NonautomotiveMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="Y24Q1_ProductOrService-Nonautomotive_StBusnSeg-AssemblyEquipment">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:NonautomotiveMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="Y23Q1_ProductOrService-Automotive">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:AutomotiveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="Y23Q1_ProductOrService-Automotive_StBusnSeg-Fastener">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:AutomotiveMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="Y23Q1_ProductOrService-Automotive_StBusnSeg-AssemblyEquipment">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:AutomotiveMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="Y23Q1_ProductOrService-Nonautomotive">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:NonautomotiveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="Y23Q1_ProductOrService-Nonautomotive_StBusnSeg-Fastener">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:NonautomotiveMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="Y23Q1_ProductOrService-Nonautomotive_StBusnSeg-AssemblyEquipment">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:NonautomotiveMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="Y23Q1_StBusnSeg-Fastener">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="Y23Q1_StBusnSeg-AssemblyEquipment">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="Y24Q1_StGeo-Location">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:LocationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="Y24Q1_StGeo-US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="Y24Q1_StGeo-US_StBusnSeg-Fastener">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="Y24Q1_StGeo-US_StBusnSeg-AssemblyEquipment">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="Y24Q1_StGeo-NonUs">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="Y24Q1_StGeo-NonUs_StBusnSeg-Fastener">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="Y24Q1_StGeo-NonUs_StBusnSeg-AssemblyEquipment">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="Y23Q1_StGeo-US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="Y23Q1_StGeo-US_StBusnSeg-Fastener">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="Y23Q1_StGeo-US_StBusnSeg-AssemblyEquipment">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="Y23Q1_StGeo-NonUs">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="Y23Q1_StGeo-NonUs_StBusnSeg-Fastener">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="Y23Q1_StGeo-NonUs_StBusnSeg-AssemblyEquipment">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="Y24Q1_StBusnSeg-Corporate">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="E24Q1_StBusnSeg-Fastener">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="E24Q1_StBusnSeg-AssemblyEquipment">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="E24Q1_StBusnSeg-Corporate">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="Y23Q1_StBusnSeg-Corporate">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="E23Q1_StBusnSeg-Fastener">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:FastenerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="E23Q1_StBusnSeg-AssemblyEquipment">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:AssemblyEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="E23Q1_StBusnSeg-Corporate">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <unit id="USD">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="Shares">
        <measure>shares</measure>
    </unit>
    <unit id="UsdPerShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <dei:EntityCentralIndexKey contextRef="Y24Q1" id="fact1">0000019871</dei:EntityCentralIndexKey>
    <dei:CurrentFiscalYearEndDate contextRef="Y24Q1" id="fact2">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:EntityRegistrantName contextRef="Y24Q1" id="fact3">CHICAGO RIVET &amp; MACHINE CO</dei:EntityRegistrantName>
    <dei:SecurityExchangeName contextRef="Y24Q1" id="fact4">NYSEAMER</dei:SecurityExchangeName>
    <dei:AmendmentFlag contextRef="Y24Q1" id="fact5">false</dei:AmendmentFlag>
    <dei:DocumentFiscalYearFocus contextRef="Y24Q1" id="fact6">2024</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus contextRef="Y24Q1" id="fact7">Q1</dei:DocumentFiscalPeriodFocus>
    <dei:DocumentQuarterlyReport contextRef="Y24Q1" id="fact8">true</dei:DocumentQuarterlyReport>
    <dei:DocumentTransitionReport contextRef="Y24Q1" id="fact9">false</dei:DocumentTransitionReport>
    <dei:DocumentType contextRef="Y24Q1" id="ixv-3322">10-Q</dei:DocumentType>
    <dei:DocumentPeriodEndDate contextRef="Y24Q1" id="ixv-3323">2024-03-31</dei:DocumentPeriodEndDate>
    <dei:EntityFileNumber contextRef="Y24Q1" id="ixv-3324">000-01227</dei:EntityFileNumber>
    <dei:EntityIncorporationStateCountryCode contextRef="Y24Q1" id="ixv-3325">IL</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber contextRef="Y24Q1" id="ixv-3326">36-0904920</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="Y24Q1" id="ixv-3327">901 Frontenac Road</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="Y24Q1" id="ixv-3328">Naperville</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="Y24Q1" id="ixv-3329">IL</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="Y24Q1" id="ixv-3330">60563</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="Y24Q1" id="ixv-3331">630</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="Y24Q1" id="ixv-3332">357-8500</dei:LocalPhoneNumber>
    <dei:Security12bTitle contextRef="Y24Q1" id="ixv-3333">Common Stock, par value $1.00 per share</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="Y24Q1" id="ixv-3334">CVR</dei:TradingSymbol>
    <dei:EntityCurrentReportingStatus contextRef="Y24Q1" id="ixv-3335">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent contextRef="Y24Q1" id="ixv-3336">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory contextRef="Y24Q1" id="ixv-3337">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness contextRef="Y24Q1" id="ixv-3338">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany contextRef="Y24Q1" id="ixv-3339">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityEmergingGrowthCompany contextRef="Y24Q1" id="ixv-3340">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany contextRef="Y24Q1" id="ixv-3341">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="I240508"
      decimals="INF"
      id="ixv-3342"
      unitRef="Shares">966132</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3343"
      unitRef="USD">1291132</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="E23" decimals="INF" id="ixv-3344" unitRef="USD">1387075</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:ShortTermInvestments
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3345"
      unitRef="USD">1374956</us-gaap:ShortTermInvestments>
    <us-gaap:ShortTermInvestments contextRef="E23" decimals="INF" id="ixv-3346" unitRef="USD">1771120</us-gaap:ShortTermInvestments>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3347"
      unitRef="USD">5463717</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="E23" decimals="INF" id="ixv-3348" unitRef="USD">4275882</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3349"
      unitRef="USD">0</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent contextRef="E23" decimals="INF" id="ixv-3350" unitRef="USD">118301</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:InventoryNet
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3351"
      unitRef="USD">6746675</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="E23" decimals="INF" id="ixv-3352" unitRef="USD">7327653</us-gaap:InventoryNet>
    <us-gaap:PrepaidTaxes
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3353"
      unitRef="USD">534224</us-gaap:PrepaidTaxes>
    <us-gaap:PrepaidTaxes contextRef="E23" decimals="INF" id="ixv-3354" unitRef="USD">580287</us-gaap:PrepaidTaxes>
    <us-gaap:OtherAssetsCurrent
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3355"
      unitRef="USD">504958</us-gaap:OtherAssetsCurrent>
    <us-gaap:OtherAssetsCurrent contextRef="E23" decimals="INF" id="ixv-3356" unitRef="USD">380562</us-gaap:OtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3357"
      unitRef="USD">15915662</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent contextRef="E23" decimals="INF" id="ixv-3358" unitRef="USD">15840880</us-gaap:AssetsCurrent>
    <us-gaap:LandAndLandImprovements
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3359"
      unitRef="USD">1510513</us-gaap:LandAndLandImprovements>
    <us-gaap:LandAndLandImprovements contextRef="E23" decimals="INF" id="ixv-3360" unitRef="USD">1510513</us-gaap:LandAndLandImprovements>
    <us-gaap:BuildingsAndImprovementsGross
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3361"
      unitRef="USD">6835619</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:BuildingsAndImprovementsGross contextRef="E23" decimals="INF" id="ixv-3362" unitRef="USD">6835619</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3363"
      unitRef="USD">37724746</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:MachineryAndEquipmentGross contextRef="E23" decimals="INF" id="ixv-3364" unitRef="USD">37952902</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3365"
      unitRef="USD">46070878</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="E23" decimals="INF" id="ixv-3366" unitRef="USD">46299034</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3367"
      unitRef="USD">34695580</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="E23" decimals="INF" id="ixv-3368" unitRef="USD">34633952</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3369"
      unitRef="USD">11375298</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="E23" decimals="INF" id="ixv-3370" unitRef="USD">11665082</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3371"
      unitRef="USD">501773</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet contextRef="E23" decimals="INF" id="ixv-3372" unitRef="USD">324943</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:Assets
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3373"
      unitRef="USD">27792733</us-gaap:Assets>
    <us-gaap:Assets contextRef="E23" decimals="INF" id="ixv-3374" unitRef="USD">27830905</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3375"
      unitRef="USD">1388599</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent contextRef="E23" decimals="INF" id="ixv-3376" unitRef="USD">788974</us-gaap:AccountsPayableCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3377"
      unitRef="USD">634373</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent contextRef="E23" decimals="INF" id="ixv-3378" unitRef="USD">514900</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3379"
      unitRef="USD">313112</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent contextRef="E23" decimals="INF" id="ixv-3380" unitRef="USD">129963</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:CustomerAdvancesAndDepositsCurrent
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3381"
      unitRef="USD">284377</us-gaap:CustomerAdvancesAndDepositsCurrent>
    <us-gaap:CustomerAdvancesAndDepositsCurrent contextRef="E23" decimals="INF" id="ixv-3382" unitRef="USD">430179</us-gaap:CustomerAdvancesAndDepositsCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3383"
      unitRef="USD">2620461</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="E23" decimals="INF" id="ixv-3384" unitRef="USD">1864016</us-gaap:LiabilitiesCurrent>
    <us-gaap:Liabilities
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3385"
      unitRef="USD">2620461</us-gaap:Liabilities>
    <us-gaap:Liabilities contextRef="E23" decimals="INF" id="ixv-3386" unitRef="USD">1864016</us-gaap:Liabilities>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3387"
      unitRef="UsdPerShare">0</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="E23"
      decimals="INF"
      id="ixv-3388"
      unitRef="UsdPerShare">0</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3389"
      unitRef="Shares">500000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="E23"
      decimals="INF"
      id="ixv-3390"
      unitRef="Shares">500000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3391"
      unitRef="Shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="E23"
      decimals="INF"
      id="ixv-3392"
      unitRef="Shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockValue
      contextRef="E24Q1"
      decimals="128"
      id="ixv-3393"
      unitRef="USD">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue contextRef="E23" decimals="128" id="ixv-3394" unitRef="USD">0</us-gaap:PreferredStockValue>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3395"
      unitRef="UsdPerShare">1</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="E23"
      decimals="INF"
      id="ixv-3396"
      unitRef="UsdPerShare">1</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3397"
      unitRef="Shares">4000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="E23"
      decimals="INF"
      id="ixv-3398"
      unitRef="Shares">4000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3399"
      unitRef="Shares">1138096</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="E23"
      decimals="INF"
      id="ixv-3400"
      unitRef="Shares">1138096</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3401"
      unitRef="Shares">966132</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="E23"
      decimals="INF"
      id="ixv-3402"
      unitRef="Shares">966132</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValueOutstanding
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3403"
      unitRef="USD">1138096</us-gaap:CommonStockValueOutstanding>
    <us-gaap:CommonStockValueOutstanding contextRef="E23" decimals="INF" id="ixv-3404" unitRef="USD">1138096</us-gaap:CommonStockValueOutstanding>
    <us-gaap:AdditionalPaidInCapital
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3405"
      unitRef="USD">447134</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AdditionalPaidInCapital contextRef="E23" decimals="INF" id="ixv-3406" unitRef="USD">447134</us-gaap:AdditionalPaidInCapital>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3407"
      unitRef="USD">27509140</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="E23" decimals="INF" id="ixv-3408" unitRef="USD">28303757</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:TreasuryStockValue
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3409"
      unitRef="USD">3922098</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue contextRef="E23" decimals="INF" id="ixv-3410" unitRef="USD">3922098</us-gaap:TreasuryStockValue>
    <us-gaap:StockholdersEquity
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3411"
      unitRef="USD">25172272</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="E23" decimals="INF" id="ixv-3412" unitRef="USD">25966889</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3413"
      unitRef="USD">27792733</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="E23" decimals="INF" id="ixv-3414" unitRef="USD">27830905</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:Revenues
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3415"
      unitRef="USD">7853181</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3416"
      unitRef="USD">8729725</us-gaap:Revenues>
    <us-gaap:CostOfRevenue
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3417"
      unitRef="USD">7108619</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3418"
      unitRef="USD">8252222</us-gaap:CostOfRevenue>
    <us-gaap:GrossProfit
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3419"
      unitRef="USD">744562</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3420"
      unitRef="USD">477503</us-gaap:GrossProfit>
    <us-gaap:OperatingExpenses
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3421"
      unitRef="USD">1647865</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3422"
      unitRef="USD">1257695</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3423"
      unitRef="USD">-903303</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3424"
      unitRef="USD">-780192</us-gaap:OperatingIncomeLoss>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3425"
      unitRef="USD">28469</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3426"
      unitRef="USD">43055</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3427"
      unitRef="USD">-874834</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3428"
      unitRef="USD">-737137</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3429"
      unitRef="USD">-176830</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3430"
      unitRef="USD">-154000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3431"
      unitRef="USD">-698004</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3432"
      unitRef="USD">-583137</us-gaap:NetIncomeLoss>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3433"
      unitRef="UsdPerShare">-0.72</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3434"
      unitRef="UsdPerShare">-0.6</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3435"
      unitRef="UsdPerShare">-0.72</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3436"
      unitRef="UsdPerShare">-0.6</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3437"
      unitRef="Shares">966132</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3438"
      unitRef="Shares">966132</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3439"
      unitRef="Shares">966132</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3440"
      unitRef="Shares">966132</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3441"
      unitRef="UsdPerShare">0.1</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3442"
      unitRef="UsdPerShare">0.22</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:StockholdersEquity
      contextRef="E23_StEqComps-PrefStock"
      decimals="INF"
      id="ixv-3443"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="E23_StEqComps-CommonStock"
      decimals="INF"
      id="ixv-3444"
      unitRef="Shares">966132</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="E23_StEqComps-CommonStock"
      decimals="INF"
      id="ixv-3445"
      unitRef="USD">1138096</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E23_StEqComps-AddPaidInCap"
      decimals="INF"
      id="ixv-3446"
      unitRef="USD">447134</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E23_StEqComps-RetainedEarnings"
      decimals="INF"
      id="ixv-3447"
      unitRef="USD">28303757</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="E23_StEqComps-TreasuryStockCommon"
      decimals="INF"
      id="ixv-3448"
      unitRef="Shares">171964</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="E23_StEqComps-TreasuryStockCommon"
      decimals="INF"
      id="ixv-3449"
      unitRef="USD">-3922098</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="E23" decimals="INF" id="ixv-3450" unitRef="USD">25966889</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="Y24Q1_StEqComps-RetainedEarnings"
      decimals="INF"
      id="ixv-3451"
      unitRef="USD">-698004</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3452"
      unitRef="USD">-698004</us-gaap:NetIncomeLoss>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3453"
      unitRef="UsdPerShare">0.1</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:Dividends
      contextRef="Y24Q1_StEqComps-RetainedEarnings"
      decimals="INF"
      id="ixv-3454"
      unitRef="USD">96613</us-gaap:Dividends>
    <us-gaap:Dividends
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3455"
      unitRef="USD">96613</us-gaap:Dividends>
    <us-gaap:StockholdersEquity
      contextRef="E24Q1_StEqComps-PrefStock"
      decimals="INF"
      id="ixv-3456"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="E24Q1_StEqComps-CommonStock"
      decimals="INF"
      id="ixv-3457"
      unitRef="Shares">966132</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="E24Q1_StEqComps-CommonStock"
      decimals="INF"
      id="ixv-3458"
      unitRef="USD">1138096</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E24Q1_StEqComps-AddPaidInCap"
      decimals="INF"
      id="ixv-3459"
      unitRef="USD">447134</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E24Q1_StEqComps-RetainedEarnings"
      decimals="INF"
      id="ixv-3460"
      unitRef="USD">27509140</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="E24Q1_StEqComps-TreasuryStockCommon"
      decimals="INF"
      id="ixv-3461"
      unitRef="Shares">171964</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="E24Q1_StEqComps-TreasuryStockCommon"
      decimals="INF"
      id="ixv-3462"
      unitRef="USD">-3922098</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3463"
      unitRef="USD">25172272</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E22_StEqComps-PrefStock"
      decimals="INF"
      id="ixv-3464"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="E22_StEqComps-CommonStock"
      decimals="INF"
      id="ixv-3465"
      unitRef="Shares">966132</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="E22_StEqComps-CommonStock"
      decimals="INF"
      id="ixv-3466"
      unitRef="USD">1138096</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E22_StEqComps-AddPaidInCap"
      decimals="INF"
      id="ixv-3467"
      unitRef="USD">447134</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E22_StEqComps-RetainedEarnings"
      decimals="INF"
      id="ixv-3468"
      unitRef="USD">33323666</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="E22_StEqComps-TreasuryStockCommon"
      decimals="INF"
      id="ixv-3469"
      unitRef="Shares">171964</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="E22_StEqComps-TreasuryStockCommon"
      decimals="INF"
      id="ixv-3470"
      unitRef="USD">-3922098</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="E22" decimals="INF" id="ixv-3471" unitRef="USD">30986798</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="Y23Q1_StEqComps-RetainedEarnings"
      decimals="INF"
      id="ixv-3472"
      unitRef="USD">-583137</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3473"
      unitRef="USD">-583137</us-gaap:NetIncomeLoss>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3474"
      unitRef="UsdPerShare">0.22</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:Dividends
      contextRef="Y23Q1_StEqComps-RetainedEarnings"
      decimals="INF"
      id="ixv-3475"
      unitRef="USD">212549</us-gaap:Dividends>
    <us-gaap:Dividends
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3476"
      unitRef="USD">212549</us-gaap:Dividends>
    <us-gaap:StockholdersEquity
      contextRef="E23Q1_StEqComps-PrefStock"
      decimals="INF"
      id="ixv-3477"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="E23Q1_StEqComps-CommonStock"
      decimals="INF"
      id="ixv-3478"
      unitRef="Shares">966132</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="E23Q1_StEqComps-CommonStock"
      decimals="INF"
      id="ixv-3479"
      unitRef="USD">1138096</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E23Q1_StEqComps-AddPaidInCap"
      decimals="INF"
      id="ixv-3480"
      unitRef="USD">447134</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E23Q1_StEqComps-RetainedEarnings"
      decimals="INF"
      id="ixv-3481"
      unitRef="USD">32527980</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="E23Q1_StEqComps-TreasuryStockCommon"
      decimals="INF"
      id="ixv-3482"
      unitRef="Shares">171964</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="E23Q1_StEqComps-TreasuryStockCommon"
      decimals="INF"
      id="ixv-3483"
      unitRef="USD">-3922098</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E23Q1"
      decimals="INF"
      id="ixv-3484"
      unitRef="USD">30191112</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3485"
      unitRef="USD">-698004</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3486"
      unitRef="USD">-583137</us-gaap:NetIncomeLoss>
    <us-gaap:Depreciation
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3487"
      unitRef="USD">323405</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3488"
      unitRef="USD">306032</us-gaap:Depreciation>
    <us-gaap:GainLossOnDispositionOfAssets
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3489"
      unitRef="USD">-36886</us-gaap:GainLossOnDispositionOfAssets>
    <us-gaap:GainLossOnDispositionOfAssets
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3490"
      unitRef="USD">0</us-gaap:GainLossOnDispositionOfAssets>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3491"
      unitRef="USD">-176830</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3492"
      unitRef="USD">-43000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3493"
      unitRef="USD">-1187835</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3494"
      unitRef="USD">-1197937</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInContractWithCustomerAsset
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3495"
      unitRef="USD">118301</us-gaap:IncreaseDecreaseInContractWithCustomerAsset>
    <us-gaap:IncreaseDecreaseInContractWithCustomerAsset
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3496"
      unitRef="USD">0</us-gaap:IncreaseDecreaseInContractWithCustomerAsset>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3497"
      unitRef="USD">580978</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3498"
      unitRef="USD">-877722</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3499"
      unitRef="USD">-78333</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3500"
      unitRef="USD">-160452</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3501"
      unitRef="USD">599625</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3502"
      unitRef="USD">924168</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3503"
      unitRef="USD">119473</us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities>
    <us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3504"
      unitRef="USD">212746</us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherAccruedLiabilities
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3505"
      unitRef="USD">183149</us-gaap:IncreaseDecreaseInOtherAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherAccruedLiabilities
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3506"
      unitRef="USD">-212227</us-gaap:IncreaseDecreaseInOtherAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInCustomerAdvancesAndDeposits
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3507"
      unitRef="USD">-145802</us-gaap:IncreaseDecreaseInCustomerAdvancesAndDeposits>
    <us-gaap:IncreaseDecreaseInCustomerAdvancesAndDeposits
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3508"
      unitRef="USD">-19881</us-gaap:IncreaseDecreaseInCustomerAdvancesAndDeposits>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3509"
      unitRef="USD">-398759</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3510"
      unitRef="USD">-1651410</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquireProductiveAssets
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3511"
      unitRef="USD">93085</us-gaap:PaymentsToAcquireProductiveAssets>
    <us-gaap:PaymentsToAcquireProductiveAssets
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3512"
      unitRef="USD">413419</us-gaap:PaymentsToAcquireProductiveAssets>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3513"
      unitRef="USD">96350</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3514"
      unitRef="USD">0</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3515"
      unitRef="USD">1133641</us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities>
    <us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3516"
      unitRef="USD">498000</us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities>
    <us-gaap:PaymentsToAcquireHeldToMaturitySecurities
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3517"
      unitRef="USD">737477</us-gaap:PaymentsToAcquireHeldToMaturitySecurities>
    <us-gaap:PaymentsToAcquireHeldToMaturitySecurities
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3518"
      unitRef="USD">0</us-gaap:PaymentsToAcquireHeldToMaturitySecurities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3519"
      unitRef="USD">399429</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3520"
      unitRef="USD">84581</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3521"
      unitRef="USD">96613</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3522"
      unitRef="USD">212549</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3523"
      unitRef="USD">-96613</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3524"
      unitRef="USD">-212549</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3525"
      unitRef="USD">-95943</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3526"
      unitRef="USD">-1779378</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="E23" decimals="INF" id="ixv-3527" unitRef="USD">1387075</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="E22" decimals="INF" id="ixv-3528" unitRef="USD">4045101</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3529"
      unitRef="USD">1291132</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="E23Q1"
      decimals="INF"
      id="ixv-3530"
      unitRef="USD">2265723</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:SignificantAccountingPoliciesTextBlock contextRef="Y24Q1" id="ixv-1730">&lt;p style="font:10pt Arial;margin:0"&gt;1. &#160;In the opinion of the Company, the accompanying unaudited interim financial statements contain all adjustments necessary to present fairly the financial position of the Company as of March 31, 2024 (unaudited) and December 31, 2023 (audited) and the results of operations and changes in cash flows for the indicated periods. &#160;Certain information and note disclosures normally included in financial statements prepared in accordance with accounting principles generally accepted in the United States of America have been omitted from these unaudited financial statements in accordance with applicable rules. Please refer to the financial statements and notes thereto included in the Company&#x2019;s Annual Report on Form 10-K for the year ended December 31, 2023.&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;The preparation of financial statements in conformity with generally accepted accounting principles requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting period. &#160;Actual results could differ from those estimates. &#160;The results of operations for the three month period ended March 31, 2024 are not necessarily indicative of the results to be expected for the year.&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;In November 2023, the FASB issued ASU No. 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures, which requires a public entity to disclose its significant segment expense categories and amounts for each reportable segment. &#160;The new guidance is effective for fiscal years beginning after December 15, 2023, and interim periods in fiscal years beginning after December 15, 2024. &#160;The Company is evaluating the impact of this ASU. &#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;In December 2023, the FASB issued ASU No. 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures, to enhance the transparency and decision usefulness of income tax disclosures providing investors with information to better assess how an entity&#x2019;s operations and related tax risks and tax planning and operational opportunities affect its tax rate and prospects for future cash flows. The new guidance is effective for annual periods beginning after December 31, 2024. &#160;The Company is evaluating the impact that it will have on our consolidated financial statements and disclosures.&lt;/p&gt; </us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock contextRef="Y24Q1" id="ixv-1731">&lt;p style="font:10pt Arial;margin:0"&gt;1. &#160;In the opinion of the Company, the accompanying unaudited interim financial statements contain all adjustments necessary to present fairly the financial position of the Company as of March 31, 2024 (unaudited) and December 31, 2023 (audited) and the results of operations and changes in cash flows for the indicated periods. &#160;Certain information and note disclosures normally included in financial statements prepared in accordance with accounting principles generally accepted in the United States of America have been omitted from these unaudited financial statements in accordance with applicable rules. Please refer to the financial statements and notes thereto included in the Company&#x2019;s Annual Report on Form 10-K for the year ended December 31, 2023.&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;The preparation of financial statements in conformity with generally accepted accounting principles requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting period. &#160;Actual results could differ from those estimates. &#160;The results of operations for the three month period ended March 31, 2024 are not necessarily indicative of the results to be expected for the year.&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;In November 2023, the FASB issued ASU No. 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures, which requires a public entity to disclose its significant segment expense categories and amounts for each reportable segment. &#160;The new guidance is effective for fiscal years beginning after December 15, 2023, and interim periods in fiscal years beginning after December 15, 2024. &#160;The Company is evaluating the impact of this ASU. &#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;In December 2023, the FASB issued ASU No. 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures, to enhance the transparency and decision usefulness of income tax disclosures providing investors with information to better assess how an entity&#x2019;s operations and related tax risks and tax planning and operational opportunities affect its tax rate and prospects for future cash flows. The new guidance is effective for annual periods beginning after December 31, 2024. &#160;The Company is evaluating the impact that it will have on our consolidated financial statements and disclosures.&lt;/p&gt; </us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <us-gaap:ConcentrationRiskDisclosureTextBlock contextRef="Y24Q1" id="ixv-1740">&lt;p style="font:10pt Arial;margin:0"&gt;2. &#160;The Company extends credit on the basis of terms that are customary within our markets to various companies doing business primarily in the automotive industry. &#160;The Company has a concentration of credit risk primarily within the automotive industry and in the Midwestern United States. &#160;The Company has established an allowance for accounts that may become uncollectible in the future. &#160;This estimated allowance is based primarily on management's evaluation of the financial condition of the customer and historical experience. &#160;The Company monitors its accounts receivable and charges to expense an amount equal to its estimate of potential credit losses. &#160;The Company considers a number of factors in determining its estimates, including the length of time its trade accounts receivable are past due, the Company's previous loss history and the customer's current ability to pay its obligation. &#160;The Company also considers current economic conditions, the economic outlook and industry-specific factors in its evaluation. &#160;Accounts receivable balances are charged off against the allowance when it is determined that the receivable will not be recovered.&lt;/p&gt; </us-gaap:ConcentrationRiskDisclosureTextBlock>
    <us-gaap:ConcentrationRiskCreditRisk contextRef="Y24Q1" id="ixv-1741">&lt;p style="font:10pt Arial;margin:0"&gt;2. &#160;The Company extends credit on the basis of terms that are customary within our markets to various companies doing business primarily in the automotive industry. &#160;The Company has a concentration of credit risk primarily within the automotive industry and in the Midwestern United States. &#160;The Company has established an allowance for accounts that may become uncollectible in the future. &#160;This estimated allowance is based primarily on management's evaluation of the financial condition of the customer and historical experience. &#160;The Company monitors its accounts receivable and charges to expense an amount equal to its estimate of potential credit losses. &#160;The Company considers a number of factors in determining its estimates, including the length of time its trade accounts receivable are past due, the Company's previous loss history and the customer's current ability to pay its obligation. &#160;The Company also considers current economic conditions, the economic outlook and industry-specific factors in its evaluation. &#160;Accounts receivable balances are charged off against the allowance when it is determined that the receivable will not be recovered.&lt;/p&gt; </us-gaap:ConcentrationRiskCreditRisk>
    <us-gaap:LegalMattersAndContingenciesTextBlock contextRef="Y24Q1" id="ixv-1744">&lt;p style="font:10pt Arial;margin:0"&gt;3. &#160;The Company is, from time to time, involved in litigation, including environmental claims and contract disputes, in the normal course of business. &#160;While it is not possible at this time to establish the ultimate amount of liability with respect to contingent liabilities, including those related to legal proceedings, management is of the opinion that the aggregate amount of any such liabilities, for which provision has not been made, will not have a material adverse effect on the Company's financial position, liquidity, results of operations or cash flows. &lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;The Company recognizes a provision if it is probable that an outflow of cash or other economic resources that can be reliably measured will be required to settle the provision. In determining the likelihood and timing of potential cash outflows, management needs to make estimates, the assessment of which is based in part on internal and external financial and legal guidance and other related factors. For contingencies, the Company is required to exercise significant judgement to determine whether the risk of loss is possible but not probable. Contingencies involve inherent uncertainties including, but not limited to, negotiations between affected parties, among other factors, and the amount of actual loss may be significantly more or less that what was provided for with respect to such contingencies. &lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0;color:#000000"&gt;The Company was recently notified by one of its customers that certain fasteners manufactured by the Company&#x2019;s wholly-owned subsidiary, H&amp;amp;L Tool Company Inc., may not conform to customer specifications. &#160;These fasteners become part of an assembly that is ultimately used in the braking system of certain vehicles. &#160;Based on information provided to the Company by the customer and the Company&#x2019;s internal review, which is ongoing, we understand that it was necessary for the customer to identify and sort the non-conforming parts in its inventory and take certain other related actions as a result of the alleged non-conforming parts. The customer has also indicated that its end customer has incurred costs relating to the alleged defective part, including costs to repair certain of the vehicles that included these non-conforming fasteners. &#160;Based on discussions with our customer as to the scope of the actions taken by the customer to date and the Company&#x2019;s own internal analysis to date, we determined an estimate of $243,000 as a contingent liability in our financial statements during the three months ended March 31, 2024, in anticipation of potential reimbursement of certain expenses that the customer may have incurred as a result of the non-conforming parts. Our discussions with the customer and our internal review process are ongoing, and the ultimate amount of such liability, if any, may be more or less than the amount reflected in the financial statements for the first quarter of 2024.&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0;color:#000000"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0;color:#000000"&gt;The Company may also incur additional potentially significant costs related to this issue, which could materially and adversely affect our results of operations and financial condition. &#160;At this time, the Company is continuing its investigation and cannot quantify potential additional financial liability, if any, due to the ultimate costs that may or may not be incurred by the parties involved in this matter, and the allocation of those costs among the parties involved. It is not possible at this time to establish the ultimate amount of any such contingent liabilities, including those related to any legal proceedings that may result related to this matter. Accordingly, no additional amount has been accrued in our financial statements at March 31, 2024.&lt;/p&gt; </us-gaap:LegalMattersAndContingenciesTextBlock>
    <us-gaap:CommitmentsAndContingenciesPolicyTextBlock contextRef="Y24Q1" id="ixv-1745">&lt;p style="font:10pt Arial;margin:0"&gt;3. &#160;The Company is, from time to time, involved in litigation, including environmental claims and contract disputes, in the normal course of business. &#160;While it is not possible at this time to establish the ultimate amount of liability with respect to contingent liabilities, including those related to legal proceedings, management is of the opinion that the aggregate amount of any such liabilities, for which provision has not been made, will not have a material adverse effect on the Company's financial position, liquidity, results of operations or cash flows. &lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;The Company recognizes a provision if it is probable that an outflow of cash or other economic resources that can be reliably measured will be required to settle the provision. In determining the likelihood and timing of potential cash outflows, management needs to make estimates, the assessment of which is based in part on internal and external financial and legal guidance and other related factors. For contingencies, the Company is required to exercise significant judgement to determine whether the risk of loss is possible but not probable. Contingencies involve inherent uncertainties including, but not limited to, negotiations between affected parties, among other factors, and the amount of actual loss may be significantly more or less that what was provided for with respect to such contingencies. &lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0;color:#000000"&gt;The Company was recently notified by one of its customers that certain fasteners manufactured by the Company&#x2019;s wholly-owned subsidiary, H&amp;amp;L Tool Company Inc., may not conform to customer specifications. &#160;These fasteners become part of an assembly that is ultimately used in the braking system of certain vehicles. &#160;Based on information provided to the Company by the customer and the Company&#x2019;s internal review, which is ongoing, we understand that it was necessary for the customer to identify and sort the non-conforming parts in its inventory and take certain other related actions as a result of the alleged non-conforming parts. The customer has also indicated that its end customer has incurred costs relating to the alleged defective part, including costs to repair certain of the vehicles that included these non-conforming fasteners. &#160;Based on discussions with our customer as to the scope of the actions taken by the customer to date and the Company&#x2019;s own internal analysis to date, we determined an estimate of $243,000 as a contingent liability in our financial statements during the three months ended March 31, 2024, in anticipation of potential reimbursement of certain expenses that the customer may have incurred as a result of the non-conforming parts. Our discussions with the customer and our internal review process are ongoing, and the ultimate amount of such liability, if any, may be more or less than the amount reflected in the financial statements for the first quarter of 2024.&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0;color:#000000"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0;color:#000000"&gt;The Company may also incur additional potentially significant costs related to this issue, which could materially and adversely affect our results of operations and financial condition. &#160;At this time, the Company is continuing its investigation and cannot quantify potential additional financial liability, if any, due to the ultimate costs that may or may not be incurred by the parties involved in this matter, and the allocation of those costs among the parties involved. It is not possible at this time to establish the ultimate amount of any such contingent liabilities, including those related to any legal proceedings that may result related to this matter. Accordingly, no additional amount has been accrued in our financial statements at March 31, 2024.&lt;/p&gt; </us-gaap:CommitmentsAndContingenciesPolicyTextBlock>
    <us-gaap:RevenueFromContractWithCustomerTextBlock contextRef="Y24Q1" id="ixv-1754">&lt;p style="font:10pt Arial;margin:0"&gt;4. &#160;Revenue&#x2014;The Company operates in the fastener industry and is in the business of producing and selling rivets, cold-formed fasteners and parts, screw machine products, automatic rivet setting machines and parts and tools for such machines. &#160;Revenue is recognized when control of the promised goods or services is transferred to our customers, generally upon shipment of goods or completion of services, in an amount that reflects the consideration we expect to receive in exchange for those goods or services. &#160;For certain assembly equipment segment transactions, revenue is recognized based on progress toward completion of the performance obligation using a labor-based measure. &#160;Labor incurred and specific material costs are compared to milestone payments per sales contract. &#160;Based on our experience, this method most accurately reflects the transfer of goods under such contracts. &#160;During the first quarter of 2024, the Company realized revenue of $106,500 related to such contracts and has a remaining performance obligation of $16,600 which is expected to be recognized in the next three months.&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;Sales taxes we may collect concurrent with revenue producing activities are excluded from revenue. &#160;Revenue is recognized net of certain sales adjustments to arrive at net sales as reported on the statement of operations. &#160;These adjustments primarily relate to customer returns and allowances, which vary over time. &#160;The Company records a liability and reduction in sales for estimated product returns based upon historical experience. &#160;If we determine that our obligation under warranty claims is probable and subject to reasonable determination, an estimate of that liability is recorded as an offset against revenue at that time. &#160;As of March 31, 2024 and December 31, 2023 reserves for warranty claims were not material. &#160;Cash received by the Company prior to transfer of control is recorded as unearned revenue.&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;Shipping and handling fees billed to customers are recognized in net sales, and related costs as cost of sales, when incurred.&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;Sales commissions are expensed when incurred because the amortization period is less than one year. &#160;These costs are recorded within selling and administrative expenses in the statement of operations.&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;The following table presents revenue by segment, further disaggregated by end-market:&lt;/p&gt; &lt;p style="font:10pt Courier New;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse"&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:center"&gt; &#160;Fastener &#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:center"&gt; &#160;Assembly Equipment &#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:center"&gt; &#160;Consolidated &#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:11pt Arial Narrow;margin:0;color:#339966"&gt;&lt;span style="font:9pt Arial;color:#000000"&gt;Three Months Ended March 31, 2024:&lt;/span&gt;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Automotive&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;4,629,190&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;48,665&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$&#160; &#160;&#160;&#160;4,677,955&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Non-automotive&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;2,094,564&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;1,080,662&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;3,175,226&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Total net sales&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;6,723,854&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;1,129,327&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;7,853,181&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Three Months Ended March 31, 2023:&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Automotive&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;5,006,190&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;44,878&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;5,051,068&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Non-automotive&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;2,850,623&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;828,034&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;3,678,657&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Total net sales&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;7,856,813&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$&#160; &#160; &#160;872,912&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;8,729,725&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt; &lt;/table&gt; &lt;p style="font:10pt Courier New;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;The following table presents revenue by segment, further disaggregated by location:&lt;/p&gt; &lt;p style="font:10pt Courier New;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse"&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:center"&gt; &#160;Fastener &#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:center"&gt; &#160;Assembly Equipment &#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:center"&gt; &#160;Consolidated &#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="font:9pt Arial"&gt;Three Months Ended March 31, 2024:&lt;/span&gt;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;United States&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;5,435,993&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;1,109,221&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;6,545,214&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Foreign&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;1,287,861&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;20,106&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;1,307,967&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Total net sales&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;6,723,854&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$&#160; &#160;&#160;1,129,327&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;7,853,181&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Three Months Ended March 31, 2023:&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;United States&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;6,391,747&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;786,571&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;7,178,318&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Foreign&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;1,465,066&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;86,341&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;1,551,407&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Total net sales&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;7,856,813&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;872,912&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;8,729,725&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt; &lt;/table&gt; &lt;p style="font:10pt Courier New;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; </us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:RevenueFromContractWithCustomerPolicyTextBlock contextRef="Y24Q1" id="ixv-1755">&lt;p style="font:10pt Arial;margin:0"&gt;4. &#160;Revenue&#x2014;The Company operates in the fastener industry and is in the business of producing and selling rivets, cold-formed fasteners and parts, screw machine products, automatic rivet setting machines and parts and tools for such machines. &#160;Revenue is recognized when control of the promised goods or services is transferred to our customers, generally upon shipment of goods or completion of services, in an amount that reflects the consideration we expect to receive in exchange for those goods or services. &#160;For certain assembly equipment segment transactions, revenue is recognized based on progress toward completion of the performance obligation using a labor-based measure. &#160;Labor incurred and specific material costs are compared to milestone payments per sales contract. &#160;Based on our experience, this method most accurately reflects the transfer of goods under such contracts. &#160;During the first quarter of 2024, the Company realized revenue of $106,500 related to such contracts and has a remaining performance obligation of $16,600 which is expected to be recognized in the next three months.&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;Sales taxes we may collect concurrent with revenue producing activities are excluded from revenue. &#160;Revenue is recognized net of certain sales adjustments to arrive at net sales as reported on the statement of operations. &#160;These adjustments primarily relate to customer returns and allowances, which vary over time. &#160;The Company records a liability and reduction in sales for estimated product returns based upon historical experience. &#160;If we determine that our obligation under warranty claims is probable and subject to reasonable determination, an estimate of that liability is recorded as an offset against revenue at that time. &#160;As of March 31, 2024 and December 31, 2023 reserves for warranty claims were not material. &#160;Cash received by the Company prior to transfer of control is recorded as unearned revenue.&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;Shipping and handling fees billed to customers are recognized in net sales, and related costs as cost of sales, when incurred.&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;Sales commissions are expensed when incurred because the amortization period is less than one year. &#160;These costs are recorded within selling and administrative expenses in the statement of operations.&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; </us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock contextRef="Y24Q1_ProductOrService-EndMarket" id="ixv-1773">&lt;p style="font:10pt Courier New;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse"&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:center"&gt; &#160;Fastener &#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:center"&gt; &#160;Assembly Equipment &#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:center"&gt; &#160;Consolidated &#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:11pt Arial Narrow;margin:0;color:#339966"&gt;&lt;span style="font:9pt Arial;color:#000000"&gt;Three Months Ended March 31, 2024:&lt;/span&gt;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Automotive&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;4,629,190&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;48,665&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$&#160; &#160;&#160;&#160;4,677,955&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Non-automotive&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;2,094,564&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;1,080,662&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;3,175,226&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Total net sales&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;6,723,854&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;1,129,327&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;7,853,181&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Three Months Ended March 31, 2023:&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Automotive&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;5,006,190&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;44,878&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;5,051,068&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Non-automotive&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;2,850,623&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;828,034&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;3,678,657&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Total net sales&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;7,856,813&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$&#160; &#160; &#160;872,912&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;8,729,725&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt; &lt;/table&gt; &lt;p style="font:10pt Courier New;margin:0"&gt;&#160;&lt;/p&gt; </us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y24Q1_ProductOrService-Automotive_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3531"
      unitRef="USD">4629190</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y24Q1_ProductOrService-Automotive_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3532"
      unitRef="USD">48665</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y24Q1_ProductOrService-Automotive"
      decimals="INF"
      id="ixv-3533"
      unitRef="USD">4677955</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y24Q1_ProductOrService-Nonautomotive_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3534"
      unitRef="USD">2094564</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y24Q1_ProductOrService-Nonautomotive_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3535"
      unitRef="USD">1080662</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y24Q1_ProductOrService-Nonautomotive"
      decimals="INF"
      id="ixv-3536"
      unitRef="USD">3175226</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y24Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3537"
      unitRef="USD">6723854</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y24Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3538"
      unitRef="USD">1129327</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3539"
      unitRef="USD">7853181</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q1_ProductOrService-Automotive_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3540"
      unitRef="USD">5006190</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q1_ProductOrService-Automotive_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3541"
      unitRef="USD">44878</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q1_ProductOrService-Automotive"
      decimals="INF"
      id="ixv-3542"
      unitRef="USD">5051068</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q1_ProductOrService-Nonautomotive_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3543"
      unitRef="USD">2850623</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q1_ProductOrService-Nonautomotive_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3544"
      unitRef="USD">828034</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q1_ProductOrService-Nonautomotive"
      decimals="INF"
      id="ixv-3545"
      unitRef="USD">3678657</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3546"
      unitRef="USD">7856813</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3547"
      unitRef="USD">872912</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3548"
      unitRef="USD">8729725</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:DisaggregationOfRevenueTableTextBlock contextRef="Y24Q1_StGeo-Location" id="ixv-1878">&lt;p style="font:10pt Courier New;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse"&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:center"&gt; &#160;Fastener &#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:center"&gt; &#160;Assembly Equipment &#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:center"&gt; &#160;Consolidated &#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="font:9pt Arial"&gt;Three Months Ended March 31, 2024:&lt;/span&gt;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;United States&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;5,435,993&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;1,109,221&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;6,545,214&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Foreign&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;1,287,861&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;20,106&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;1,307,967&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Total net sales&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;6,723,854&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$&#160; &#160;&#160;1,129,327&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;7,853,181&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Three Months Ended March 31, 2023:&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;United States&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;6,391,747&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;786,571&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:67.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;7,178,318&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Foreign&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;1,465,066&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;86,341&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;1,551,407&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;Total net sales&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;7,856,813&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:72pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;872,912&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;$ &#160;&#160;&#160;&#160;8,729,725&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:72pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:67.5pt;padding-left:2pt;padding-right:2pt;border-top:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;color:#000000;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt; &lt;/table&gt; &lt;p style="font:10pt Courier New;margin:0"&gt;&#160;&lt;/p&gt; </us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y24Q1_StGeo-US_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3549"
      unitRef="USD">5435993</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y24Q1_StGeo-US_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3550"
      unitRef="USD">1109221</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y24Q1_StGeo-US"
      decimals="INF"
      id="ixv-3551"
      unitRef="USD">6545214</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y24Q1_StGeo-NonUs_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3552"
      unitRef="USD">1287861</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y24Q1_StGeo-NonUs_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3553"
      unitRef="USD">20106</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y24Q1_StGeo-NonUs"
      decimals="INF"
      id="ixv-3554"
      unitRef="USD">1307967</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y24Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3555"
      unitRef="USD">6723854</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y24Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3556"
      unitRef="USD">1129327</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y24Q1"
      decimals="INF"
      id="ixv-3557"
      unitRef="USD">7853181</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q1_StGeo-US_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3558"
      unitRef="USD">6391747</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q1_StGeo-US_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3559"
      unitRef="USD">786571</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q1_StGeo-US"
      decimals="INF"
      id="ixv-3560"
      unitRef="USD">7178318</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q1_StGeo-NonUs_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3561"
      unitRef="USD">1465066</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q1_StGeo-NonUs_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3562"
      unitRef="USD">86341</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q1_StGeo-NonUs"
      decimals="INF"
      id="ixv-3563"
      unitRef="USD">1551407</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3564"
      unitRef="USD">7856813</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3565"
      unitRef="USD">872912</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q1"
      decimals="INF"
      id="ixv-3566"
      unitRef="USD">8729725</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:IncomeTaxDisclosureTextBlock contextRef="Y24Q1" id="ixv-1989">&lt;p style="font:10pt Arial;margin:0"&gt;5. &#160;The Company&#x2019;s effective tax rates were approximately 22.9% and 20.9% for the first quarter of 2024 and 2023, respectively.&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;The Company&#x2019;s federal income tax returns for the 2020 through 2023 tax years are subject to examination by the Internal Revenue Service (&#x201c;IRS&#x201d;). &#160;Management does not anticipate any adjustments that would result in a material change to the results of operations or financial condition of the Company. &#160;No statutes of limitation have been extended on any of the Company&#x2019;s federal income tax filings. The statute of limitations on the Company&#x2019;s 2020 through 2023 federal income tax returns will expire on September 15, 2024 through 2027, respectively. &lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;The Company&#x2019;s state income tax returns for the 2020 through 2023 tax years remain subject to examination by various state authorities with the latest closing period on October 31, 2027. &#160;The Company is not currently under examination by any state authority for income tax purposes and no statutes of limitation for state income tax filings have been extended.&lt;/p&gt; </us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:IncomeTaxPolicyTextBlock contextRef="Y24Q1" id="ixv-1990">&lt;p style="font:10pt Arial;margin:0"&gt;5. &#160;The Company&#x2019;s effective tax rates were approximately 22.9% and 20.9% for the first quarter of 2024 and 2023, respectively.&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;The Company&#x2019;s federal income tax returns for the 2020 through 2023 tax years are subject to examination by the Internal Revenue Service (&#x201c;IRS&#x201d;). &#160;Management does not anticipate any adjustments that would result in a material change to the results of operations or financial condition of the Company. &#160;No statutes of limitation have been extended on any of the Company&#x2019;s federal income tax filings. The statute of limitations on the Company&#x2019;s 2020 through 2023 federal income tax returns will expire on September 15, 2024 through 2027, respectively. &lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;The Company&#x2019;s state income tax returns for the 2020 through 2023 tax years remain subject to examination by various state authorities with the latest closing period on October 31, 2027. &#160;The Company is not currently under examination by any state authority for income tax purposes and no statutes of limitation for state income tax filings have been extended.&lt;/p&gt; </us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:InventoryDisclosureTextBlock contextRef="Y24Q1" id="ixv-1997">&lt;p style="font:10pt Arial;margin:0"&gt;6. &#160;Inventories are stated at the lower of cost or net realizable value, cost being determined by the first-in, first-out method.&lt;/p&gt; &lt;p style="font:10pt Courier New;margin:0;color:#000000"&gt;&lt;span style="font-family:Arial"&gt; &#160;A summary of inventories at the dates indicated is as follows:&lt;/span&gt; &lt;/p&gt; &lt;p style="font:10pt Courier New;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse"&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:87.85pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:center"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;March 31, 2024&lt;/span&gt;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:center"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:87.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:center"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;December 31, 2023&lt;/span&gt;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0"&gt;Raw material&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:87.85pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;&#160;2,432,691&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:87.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;&#160;2,878,869&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0"&gt;Work-in-process&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:87.85pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;2,463,760&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:87.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;2,374,795&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0"&gt;Finished goods&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:87.85pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;2,390,224&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:87.55pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;2,614,989&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0"&gt;Inventories, gross&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:87.85pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;7,286,675&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:87.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;7,868,653&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0"&gt;Valuation reserves&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:87.85pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;(540,000)&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:87.55pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;(541,000)&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0"&gt;Inventories, net&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:87.85pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;&#160;6,746,675&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:87.55pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;&#160;7,327,653&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt; &lt;/table&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; </us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:InventoryPolicyTextBlock contextRef="Y24Q1" id="ixv-1998">&lt;p style="font:10pt Arial;margin:0"&gt;6. &#160;Inventories are stated at the lower of cost or net realizable value, cost being determined by the first-in, first-out method.&lt;/p&gt; </us-gaap:InventoryPolicyTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock contextRef="Y24Q1" id="ixv-2002">&lt;p style="font:10pt Courier New;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse"&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:87.85pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:center"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;March 31, 2024&lt;/span&gt;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:center"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:87.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:center"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;December 31, 2023&lt;/span&gt;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0"&gt;Raw material&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:87.85pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;&#160;2,432,691&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:87.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;&#160;2,878,869&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0"&gt;Work-in-process&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:87.85pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;2,463,760&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:87.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;2,374,795&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0"&gt;Finished goods&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:87.85pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;2,390,224&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:87.55pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;2,614,989&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0"&gt;Inventories, gross&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:87.85pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;7,286,675&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:87.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;7,868,653&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0"&gt;Valuation reserves&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:87.85pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;(540,000)&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:87.55pt;padding-left:2pt;padding-right:2pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;(541,000)&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:93.6pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0"&gt;Inventories, net&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:87.85pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;&#160;6,746,675&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:6.55pt;padding-left:2pt;padding-right:2pt" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:87.55pt;padding-left:2pt;padding-right:2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="bottom"&gt;&lt;p style="font:9pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;&#160;7,327,653&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt; &lt;/table&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; </us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryRawMaterials
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3567"
      unitRef="USD">2432691</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryRawMaterials contextRef="E23" decimals="INF" id="ixv-3568" unitRef="USD">2878869</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryWorkInProcess
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3569"
      unitRef="USD">2463760</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryWorkInProcess contextRef="E23" decimals="INF" id="ixv-3570" unitRef="USD">2374795</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryFinishedGoods
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3571"
      unitRef="USD">2390224</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryFinishedGoods contextRef="E23" decimals="INF" id="ixv-3572" unitRef="USD">2614989</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryGross
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3573"
      unitRef="USD">7286675</us-gaap:InventoryGross>
    <us-gaap:InventoryGross contextRef="E23" decimals="INF" id="ixv-3574" unitRef="USD">7868653</us-gaap:InventoryGross>
    <us-gaap:InventoryValuationReserves
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3575"
      unitRef="USD">540000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryValuationReserves contextRef="E23" decimals="INF" id="ixv-3576" unitRef="USD">541000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryNet
      contextRef="E24Q1"
      decimals="INF"
      id="ixv-3577"
      unitRef="USD">6746675</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="E23" decimals="INF" id="ixv-3578" unitRef="USD">7327653</us-gaap:InventoryNet>
    <us-gaap:SegmentReportingDisclosureTextBlock contextRef="Y24Q1" id="ixv-2077">&lt;p style="font:10pt Arial;margin:0"&gt;7. &#160;Segment Information&#x2014;The Company operates in two business segments as determined by its products. &#160;The fastener segment includes rivets, cold-formed fasteners and parts and screw machine products. &#160;The assembly equipment segment includes automatic rivet setting machines and parts and tools for such machines.&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;Information by segment for the periods presented is as follows:&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse"&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:center"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Fastener&lt;/span&gt;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:center"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Assembly Equipment&lt;/span&gt;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:center"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Unallocated Corporate&lt;/span&gt;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:center"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Consolidated&lt;/span&gt;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Three Months Ended March 31, 2024:&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Net sales&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;6,723,854&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;1,129,327&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;7,853,181&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Depreciation&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;293,381&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;29,484&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;540&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;323,405&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Segment operating profit (loss)&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;(389,124)&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;322,621&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;(66,503)&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Selling and administrative expenses&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;(836,800)&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;(836,800)&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Interest income&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;28,469&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;28,469&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Loss before income taxes&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;(874,834)&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Capital expenditures&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;54,222&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;38,863&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;93,085&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Segment assets:&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt; &#160;&#160;Accounts receivable, net&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;4,871,135&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;592,582&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;5,463,717&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt; &#160;&#160;Inventories, net&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;5,227,398&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;1,519,277&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;6,746,675&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt; &#160;&#160;Property, plant and equipment, net&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;9,159,982&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;1,195,183&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;1,020,133&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;11,375,298&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt; &#160;&#160;Other assets&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;4,207,043&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;4,207,043&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;27,792,733&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Three Months Ended March 31, 2023:&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Net sales&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;7,856,813&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;872,912&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;8,729,725&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Depreciation&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;272,636&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;30,732&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;2,664&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;306,032&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Segment operating profit (loss)&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;(428,501)&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;189,315&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;(239,186)&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Selling and administrative expenses&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;(538,537)&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;(538,537)&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Interest income&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;40,586&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;40,586&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Loss before income taxes&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;(737,137)&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Capital expenditures&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;336,066&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;77,353&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;413,419&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Segment assets:&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt; &#160;&#160;Accounts receivable, net&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;5,857,565&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;315,509&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;6,173,074&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt; &#160;&#160;Inventories, net&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;8,566,031&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;1,432,921&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;9,998,952&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt; &#160;&#160;Property, plant and equipment, net&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;9,625,759&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;1,272,765&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;1,070,656&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;11,969,180&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt; &#160;&#160;Other assets&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;5,551,041&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;5,551,041&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;33,692,247&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt; &lt;/table&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; </us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:SegmentReportingPolicyPolicyTextBlock contextRef="Y24Q1" id="ixv-2078">&lt;p style="font:10pt Arial;margin:0"&gt;7. &#160;Segment Information&#x2014;The Company operates in two business segments as determined by its products. &#160;The fastener segment includes rivets, cold-formed fasteners and parts and screw machine products. &#160;The assembly equipment segment includes automatic rivet setting machines and parts and tools for such machines.&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; </us-gaap:SegmentReportingPolicyPolicyTextBlock>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock contextRef="Y24Q1" id="ixv-2082">&lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse"&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:center"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Fastener&lt;/span&gt;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:center"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Assembly Equipment&lt;/span&gt;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:center"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Unallocated Corporate&lt;/span&gt;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:center"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Consolidated&lt;/span&gt;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Three Months Ended March 31, 2024:&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Net sales&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;6,723,854&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;1,129,327&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;7,853,181&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Depreciation&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;293,381&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;29,484&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;540&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;323,405&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Segment operating profit (loss)&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;(389,124)&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;322,621&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;(66,503)&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Selling and administrative expenses&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;(836,800)&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;(836,800)&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Interest income&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;28,469&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;28,469&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Loss before income taxes&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;(874,834)&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Capital expenditures&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;54,222&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;38,863&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;93,085&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Segment assets:&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt; &#160;&#160;Accounts receivable, net&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;4,871,135&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;592,582&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;5,463,717&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt; &#160;&#160;Inventories, net&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;5,227,398&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;1,519,277&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;6,746,675&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt; &#160;&#160;Property, plant and equipment, net&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;9,159,982&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;1,195,183&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;1,020,133&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;11,375,298&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt; &#160;&#160;Other assets&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;4,207,043&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;4,207,043&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;27,792,733&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Three Months Ended March 31, 2023:&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Net sales&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;7,856,813&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;872,912&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;&#160;8,729,725&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Depreciation&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;272,636&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;30,732&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;2,664&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;306,032&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Segment operating profit (loss)&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;(428,501)&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;189,315&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;(239,186)&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Selling and administrative expenses&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;(538,537)&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;(538,537)&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Interest income&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;40,586&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;40,586&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Loss before income taxes&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;&#160;(737,137)&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Capital expenditures&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;336,066&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;77,353&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;413,419&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;Segment assets:&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt; &#160;&#160;Accounts receivable, net&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;5,857,565&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;315,509&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;6,173,074&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt; &#160;&#160;Inventories, net&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;8,566,031&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;1,432,921&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;9,998,952&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt; &#160;&#160;Property, plant and equipment, net&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;9,625,759&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;1,272,765&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;1,070,656&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;11,969,180&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt; &#160;&#160;Other assets&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;0&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;5,551,041&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;5,551,041&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="width:75.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0;text-align:right"&gt;$ &#160;&#160;&#160;33,692,247&#160;&#160;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;
&lt;td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"&gt;&lt;p style="font:8pt Arial;margin:0"&gt;&#160;&lt;/p&gt; &lt;/td&gt;&lt;/tr&gt; &lt;/table&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; </us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <us-gaap:Revenues
      contextRef="Y24Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3579"
      unitRef="USD">6723854</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Y24Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3580"
      unitRef="USD">1129327</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Y24Q1_StBusnSeg-Corporate"
      decimals="INF"
      id="ixv-3581"
      unitRef="USD">0</us-gaap:Revenues>
    <us-gaap:Depreciation
      contextRef="Y24Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3582"
      unitRef="USD">293381</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="Y24Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3583"
      unitRef="USD">29484</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="Y24Q1_StBusnSeg-Corporate"
      decimals="INF"
      id="ixv-3584"
      unitRef="USD">540</us-gaap:Depreciation>
    <fil:SegmentOperatingprofit
      contextRef="Y24Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3585"
      unitRef="USD">-389124</fil:SegmentOperatingprofit>
    <fil:SegmentOperatingprofit
      contextRef="Y24Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3586"
      unitRef="USD">322621</fil:SegmentOperatingprofit>
    <fil:SegmentOperatingprofit
      contextRef="Y24Q1_StBusnSeg-Corporate"
      decimals="INF"
      id="ixv-3587"
      unitRef="USD">0</fil:SegmentOperatingprofit>
    <fil:SellingAndAdministrativeExpensesUnallocatedCorporate
      contextRef="Y24Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3588"
      unitRef="USD">0</fil:SellingAndAdministrativeExpensesUnallocatedCorporate>
    <fil:SellingAndAdministrativeExpensesUnallocatedCorporate
      contextRef="Y24Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3589"
      unitRef="USD">0</fil:SellingAndAdministrativeExpensesUnallocatedCorporate>
    <fil:SellingAndAdministrativeExpensesUnallocatedCorporate
      contextRef="Y24Q1_StBusnSeg-Corporate"
      decimals="INF"
      id="ixv-3590"
      unitRef="USD">-836800</fil:SellingAndAdministrativeExpensesUnallocatedCorporate>
    <us-gaap:InterestAndOtherIncome
      contextRef="Y24Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3591"
      unitRef="USD">0</us-gaap:InterestAndOtherIncome>
    <us-gaap:InterestAndOtherIncome
      contextRef="Y24Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3592"
      unitRef="USD">0</us-gaap:InterestAndOtherIncome>
    <us-gaap:InterestAndOtherIncome
      contextRef="Y24Q1_StBusnSeg-Corporate"
      decimals="INF"
      id="ixv-3593"
      unitRef="USD">28469</us-gaap:InterestAndOtherIncome>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="Y24Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3594"
      unitRef="USD">54222</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="Y24Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3595"
      unitRef="USD">38863</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="Y24Q1_StBusnSeg-Corporate"
      decimals="INF"
      id="ixv-3596"
      unitRef="USD">0</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="E24Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3597"
      unitRef="USD">4871135</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="E24Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3598"
      unitRef="USD">592582</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="E24Q1_StBusnSeg-Corporate"
      decimals="INF"
      id="ixv-3599"
      unitRef="USD">0</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="E24Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3600"
      unitRef="USD">5227398</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="E24Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3601"
      unitRef="USD">1519277</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="E24Q1_StBusnSeg-Corporate"
      decimals="INF"
      id="ixv-3602"
      unitRef="USD">0</us-gaap:InventoryNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="E24Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3603"
      unitRef="USD">9159982</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="E24Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3604"
      unitRef="USD">1195183</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="E24Q1_StBusnSeg-Corporate"
      decimals="INF"
      id="ixv-3605"
      unitRef="USD">1020133</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OtherAssets
      contextRef="E24Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3606"
      unitRef="USD">0</us-gaap:OtherAssets>
    <us-gaap:OtherAssets
      contextRef="E24Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3607"
      unitRef="USD">0</us-gaap:OtherAssets>
    <us-gaap:OtherAssets
      contextRef="E24Q1_StBusnSeg-Corporate"
      decimals="INF"
      id="ixv-3608"
      unitRef="USD">4207043</us-gaap:OtherAssets>
    <us-gaap:Revenues
      contextRef="Y23Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3609"
      unitRef="USD">7856813</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Y23Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3610"
      unitRef="USD">872912</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Y23Q1_StBusnSeg-Corporate"
      decimals="INF"
      id="ixv-3611"
      unitRef="USD">0</us-gaap:Revenues>
    <us-gaap:Depreciation
      contextRef="Y23Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3612"
      unitRef="USD">272636</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="Y23Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3613"
      unitRef="USD">30732</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="Y23Q1_StBusnSeg-Corporate"
      decimals="INF"
      id="ixv-3614"
      unitRef="USD">2664</us-gaap:Depreciation>
    <fil:SegmentOperatingprofit
      contextRef="Y23Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3615"
      unitRef="USD">-428501</fil:SegmentOperatingprofit>
    <fil:SegmentOperatingprofit
      contextRef="Y23Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3616"
      unitRef="USD">189315</fil:SegmentOperatingprofit>
    <fil:SegmentOperatingprofit
      contextRef="Y23Q1_StBusnSeg-Corporate"
      decimals="INF"
      id="ixv-3617"
      unitRef="USD">0</fil:SegmentOperatingprofit>
    <fil:SellingAndAdministrativeExpensesUnallocatedCorporate
      contextRef="Y23Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3618"
      unitRef="USD">0</fil:SellingAndAdministrativeExpensesUnallocatedCorporate>
    <fil:SellingAndAdministrativeExpensesUnallocatedCorporate
      contextRef="Y23Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3619"
      unitRef="USD">0</fil:SellingAndAdministrativeExpensesUnallocatedCorporate>
    <fil:SellingAndAdministrativeExpensesUnallocatedCorporate
      contextRef="Y23Q1_StBusnSeg-Corporate"
      decimals="INF"
      id="ixv-3620"
      unitRef="USD">-538537</fil:SellingAndAdministrativeExpensesUnallocatedCorporate>
    <us-gaap:InterestAndOtherIncome
      contextRef="Y23Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3621"
      unitRef="USD">0</us-gaap:InterestAndOtherIncome>
    <us-gaap:InterestAndOtherIncome
      contextRef="Y23Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3622"
      unitRef="USD">0</us-gaap:InterestAndOtherIncome>
    <us-gaap:InterestAndOtherIncome
      contextRef="Y23Q1_StBusnSeg-Corporate"
      decimals="INF"
      id="ixv-3623"
      unitRef="USD">40586</us-gaap:InterestAndOtherIncome>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="Y23Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3624"
      unitRef="USD">336066</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="Y23Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3625"
      unitRef="USD">0</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="Y23Q1_StBusnSeg-Corporate"
      decimals="INF"
      id="ixv-3626"
      unitRef="USD">77353</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="E23Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3627"
      unitRef="USD">5857565</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="E23Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3628"
      unitRef="USD">315509</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="E23Q1_StBusnSeg-Corporate"
      decimals="INF"
      id="ixv-3629"
      unitRef="USD">0</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="E23Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3630"
      unitRef="USD">8566031</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="E23Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3631"
      unitRef="USD">1432921</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="E23Q1_StBusnSeg-Corporate"
      decimals="INF"
      id="ixv-3632"
      unitRef="USD">0</us-gaap:InventoryNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="E23Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3633"
      unitRef="USD">9625759</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="E23Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3634"
      unitRef="USD">1272765</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="E23Q1_StBusnSeg-Corporate"
      decimals="INF"
      id="ixv-3635"
      unitRef="USD">1070656</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OtherAssets
      contextRef="E23Q1_StBusnSeg-Fastener"
      decimals="INF"
      id="ixv-3636"
      unitRef="USD">0</us-gaap:OtherAssets>
    <us-gaap:OtherAssets
      contextRef="E23Q1_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      id="ixv-3637"
      unitRef="USD">0</us-gaap:OtherAssets>
    <us-gaap:OtherAssets
      contextRef="E23Q1_StBusnSeg-Corporate"
      decimals="INF"
      id="ixv-3638"
      unitRef="USD">5551041</us-gaap:OtherAssets>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
