<SEC-DOCUMENT>0001193125-23-204957.txt : 20230807
<SEC-HEADER>0001193125-23-204957.hdr.sgml : 20230807
<ACCEPTANCE-DATETIME>20230807160616
ACCESSION NUMBER:		0001193125-23-204957
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		38
CONFORMED PERIOD OF REPORT:	20230630
FILED AS OF DATE:		20230807
DATE AS OF CHANGE:		20230807

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			CHICAGO RIVET & MACHINE CO
		CENTRAL INDEX KEY:			0000019871
		STANDARD INDUSTRIAL CLASSIFICATION:	METALWORKING MACHINERY & EQUIPMENT [3540]
		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:		231147607

	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>d440811d10q.htm
<DESCRIPTION>10-Q
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8" ?>
<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/20230630' 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/2015-02-26' 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='D230101_230630' id='fact1'>0000019871</ix:nonNumeric> <ix:nonNumeric name='dei:CurrentFiscalYearEndDate' contextRef='D230101_230630' id='fact2'>--12-31</ix:nonNumeric> <ix:nonNumeric name='dei:EntityRegistrantName' contextRef='D230101_230630' id='fact3'>CHICAGO RIVET &amp; MACHINE CO</ix:nonNumeric> <ix:nonNumeric name='dei:SecurityExchangeName' contextRef='D230101_230630' id='fact4'>NYSEAMER</ix:nonNumeric> <ix:nonNumeric name='dei:AmendmentFlag' contextRef='D230101_230630' id='fact5'>false</ix:nonNumeric> <ix:nonNumeric name='dei:DocumentFiscalYearFocus' contextRef='D230101_230630' id='fact6'>2023</ix:nonNumeric> <ix:nonNumeric name='dei:DocumentFiscalPeriodFocus' contextRef='D230101_230630' id='fact7'>Q2</ix:nonNumeric> <ix:nonNumeric name='dei:DocumentTransitionReport' contextRef='D230101_230630' id='fact8'>false</ix:nonNumeric> </ix:hidden> <ix:references> <link:schemaRef xlink:arcrole='http://www.xbrl.org/2003/linkbase' xlink:href='cvr-20230630.xsd' xlink:type='simple'/> </ix:references> <ix:resources> <i:context id='D230101_230630'> <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-06-30</i:endDate> </i:period> </i:context> <i:context id='E23Q2'> <i:entity> <i:identifier scheme='http://www.sec.gov/CIK'>0000019871</i:identifier> </i:entity> <i:period> <i:instant>2023-06-30</i:instant> </i:period> </i:context> <i:context id='I230807'> <i:entity> <i:identifier scheme='http://www.sec.gov/CIK'>0000019871</i:identifier> </i:entity> <i:period> <i:instant>2023-08-07</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='Y23Q2'> <i:entity> <i:identifier scheme='http://www.sec.gov/CIK'>0000019871</i:identifier> </i:entity> <i:period> <i:startDate>2023-04-01</i:startDate> <i:endDate>2023-06-30</i:endDate> </i:period> </i:context> <i:context id='Y22Q2'> <i:entity> <i:identifier scheme='http://www.sec.gov/CIK'>0000019871</i:identifier> </i:entity> <i:period> <i:startDate>2022-04-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='D220101_220630'> <i:entity> <i:identifier scheme='http://www.sec.gov/CIK'>0000019871</i:identifier> </i:entity> <i:period> <i:startDate>2022-01-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </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'> <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='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='Y23Q2_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-04-01</i:startDate> <i:endDate>2023-06-30</i:endDate> </i:period> </i:context> <i:context id='E23Q2_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-06-30</i:instant> </i:period> </i:context> <i:context id='E23Q2_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-06-30</i:instant> </i:period> </i:context> <i:context id='E23Q2_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-06-30</i:instant> </i:period> </i:context> <i:context id='E23Q2_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-06-30</i:instant> </i:period> </i:context> <i:context id='E23Q2_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-06-30</i:instant> </i:period> </i:context> <i:context id='E21'> <i:entity> <i:identifier scheme='http://www.sec.gov/CIK'>0000019871</i:identifier> </i:entity> <i:period> <i:instant>2021-12-31</i:instant> </i:period> </i:context> <i:context id='E21_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>2021-12-31</i:instant> </i:period> </i:context> <i:context id='E21_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>2021-12-31</i:instant> </i:period> </i:context> <i:context id='E21_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>2021-12-31</i:instant> </i:period> </i:context> <i:context id='E21_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>2021-12-31</i:instant> </i:period> </i:context> <i:context id='E21_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>2021-12-31</i:instant> </i:period> </i:context> <i:context id='Y22Q1'> <i:entity> <i:identifier scheme='http://www.sec.gov/CIK'>0000019871</i:identifier> </i:entity> <i:period> <i:startDate>2022-01-01</i:startDate> <i:endDate>2022-03-31</i:endDate> </i:period> </i:context> <i:context id='Y22Q1_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>2022-01-01</i:startDate> <i:endDate>2022-03-31</i:endDate> </i:period> </i:context> <i:context id='E22Q1'> <i:entity> <i:identifier scheme='http://www.sec.gov/CIK'>0000019871</i:identifier> </i:entity> <i:period> <i:instant>2022-03-31</i:instant> </i:period> </i:context> <i:context id='E22Q1_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-03-31</i:instant> </i:period> </i:context> <i:context id='E22Q1_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-03-31</i:instant> </i:period> </i:context> <i:context id='E22Q1_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-03-31</i:instant> </i:period> </i:context> <i:context id='E22Q1_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-03-31</i:instant> </i:period> </i:context> <i:context id='E22Q1_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-03-31</i:instant> </i:period> </i:context> <i:context id='Y22Q2_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>2022-04-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='E22Q2'> <i:entity> <i:identifier scheme='http://www.sec.gov/CIK'>0000019871</i:identifier> </i:entity> <i:period> <i:instant>2022-06-30</i:instant> </i:period> </i:context> <i:context id='E22Q2_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-06-30</i:instant> </i:period> </i:context> <i:context id='E22Q2_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-06-30</i:instant> </i:period> </i:context> <i:context id='E22Q2_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-06-30</i:instant> </i:period> </i:context> <i:context id='E22Q2_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-06-30</i:instant> </i:period> </i:context> <i:context id='E22Q2_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-06-30</i:instant> </i:period> </i:context> <i:context id='D230101_230630_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>2023-01-01</i:startDate> <i:endDate>2023-06-30</i:endDate> </i:period> </i:context> <i:context id='D230101_230630_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-06-30</i:endDate> </i:period> </i:context> <i:context id='D230101_230630_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-06-30</i:endDate> </i:period> </i:context> <i:context id='Y23Q2_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-04-01</i:startDate> <i:endDate>2023-06-30</i:endDate> </i:period> </i:context> <i:context id='Y23Q2_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-04-01</i:startDate> <i:endDate>2023-06-30</i:endDate> </i:period> </i:context> <i:context id='Y23Q2_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-04-01</i:startDate> <i:endDate>2023-06-30</i:endDate> </i:period> </i:context> <i:context id='Y23Q2_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-04-01</i:startDate> <i:endDate>2023-06-30</i:endDate> </i:period> </i:context> <i:context id='Y23Q2_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-04-01</i:startDate> <i:endDate>2023-06-30</i:endDate> </i:period> </i:context> <i:context id='Y23Q2_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-04-01</i:startDate> <i:endDate>2023-06-30</i:endDate> </i:period> </i:context> <i:context id='Y23Q2_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-04-01</i:startDate> <i:endDate>2023-06-30</i:endDate> </i:period> </i:context> <i:context id='Y23Q2_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-04-01</i:startDate> <i:endDate>2023-06-30</i:endDate> </i:period> </i:context> <i:context id='Y22Q2_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>2022-04-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='Y22Q2_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>2022-04-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='Y22Q2_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>2022-04-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='Y22Q2_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>2022-04-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='Y22Q2_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>2022-04-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='Y22Q2_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>2022-04-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='Y22Q2_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>2022-04-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='Y22Q2_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>2022-04-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='D230101_230630_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-06-30</i:endDate> </i:period> </i:context> <i:context id='D230101_230630_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-06-30</i:endDate> </i:period> </i:context> <i:context id='D230101_230630_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-06-30</i:endDate> </i:period> </i:context> <i:context id='D230101_230630_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-06-30</i:endDate> </i:period> </i:context> <i:context id='D230101_230630_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-06-30</i:endDate> </i:period> </i:context> <i:context id='D230101_230630_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-06-30</i:endDate> </i:period> </i:context> <i:context id='D220101_220630_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>2022-01-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='D220101_220630_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>2022-01-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='D220101_220630_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>2022-01-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='D220101_220630_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>2022-01-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='D220101_220630_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>2022-01-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='D220101_220630_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>2022-01-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='D220101_220630_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>2022-01-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='D220101_220630_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>2022-01-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='D230101_230630_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>2023-01-01</i:startDate> <i:endDate>2023-06-30</i:endDate> </i:period> </i:context> <i:context id='Y23Q2_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-04-01</i:startDate> <i:endDate>2023-06-30</i:endDate> </i:period> </i:context> <i:context id='Y23Q2_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-04-01</i:startDate> <i:endDate>2023-06-30</i:endDate> </i:period> </i:context> <i:context id='Y23Q2_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-04-01</i:startDate> <i:endDate>2023-06-30</i:endDate> </i:period> </i:context> <i:context id='Y23Q2_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-04-01</i:startDate> <i:endDate>2023-06-30</i:endDate> </i:period> </i:context> <i:context id='Y23Q2_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-04-01</i:startDate> <i:endDate>2023-06-30</i:endDate> </i:period> </i:context> <i:context id='Y23Q2_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-04-01</i:startDate> <i:endDate>2023-06-30</i:endDate> </i:period> </i:context> <i:context id='Y22Q2_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>2022-04-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='Y22Q2_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>2022-04-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='Y22Q2_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>2022-04-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='Y22Q2_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>2022-04-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='Y22Q2_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>2022-04-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='Y22Q2_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>2022-04-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='D230101_230630_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-06-30</i:endDate> </i:period> </i:context> <i:context id='D230101_230630_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-06-30</i:endDate> </i:period> </i:context> <i:context id='D230101_230630_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-06-30</i:endDate> </i:period> </i:context> <i:context id='D230101_230630_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-06-30</i:endDate> </i:period> </i:context> <i:context id='D230101_230630_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-06-30</i:endDate> </i:period> </i:context> <i:context id='D230101_230630_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-06-30</i:endDate> </i:period> </i:context> <i:context id='D220101_220630_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>2022-01-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='D220101_220630_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>2022-01-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='D220101_220630_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>2022-01-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='D220101_220630_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>2022-01-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='D220101_220630_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>2022-01-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='D220101_220630_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>2022-01-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='D230101_230630_StBusnSeg-UnallocatedCorporate'> <i:entity> <i:identifier scheme='http://www.sec.gov/CIK'>0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension='us-gaap:StatementBusinessSegmentsAxis'>fil:UnallocatedCorporateMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2023-01-01</i:startDate> <i:endDate>2023-06-30</i:endDate> </i:period> </i:context> <i:context id='Y23Q2_StBusnSeg-UnallocatedCorporate'> <i:entity> <i:identifier scheme='http://www.sec.gov/CIK'>0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension='us-gaap:StatementBusinessSegmentsAxis'>fil:UnallocatedCorporateMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2023-04-01</i:startDate> <i:endDate>2023-06-30</i:endDate> </i:period> </i:context> <i:context id='E23Q2_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-06-30</i:instant> </i:period> </i:context> <i:context id='E23Q2_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-06-30</i:instant> </i:period> </i:context> <i:context id='E23Q2_StBusnSeg-UnallocatedCorporate'> <i:entity> <i:identifier scheme='http://www.sec.gov/CIK'>0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension='us-gaap:StatementBusinessSegmentsAxis'>fil:UnallocatedCorporateMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2023-06-30</i:instant> </i:period> </i:context> <i:context id='Y22Q2_StBusnSeg-UnallocatedCorporate'> <i:entity> <i:identifier scheme='http://www.sec.gov/CIK'>0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension='us-gaap:StatementBusinessSegmentsAxis'>fil:UnallocatedCorporateMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2022-04-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </i:period> </i:context> <i:context id='E22Q2_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>2022-06-30</i:instant> </i:period> </i:context> <i:context id='E22Q2_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>2022-06-30</i:instant> </i:period> </i:context> <i:context id='E22Q2_StBusnSeg-UnallocatedCorporate'> <i:entity> <i:identifier scheme='http://www.sec.gov/CIK'>0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension='us-gaap:StatementBusinessSegmentsAxis'>fil:UnallocatedCorporateMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:instant>2022-06-30</i:instant> </i:period> </i:context> <i:context id='D220101_220630_StBusnSeg-UnallocatedCorporate'> <i:entity> <i:identifier scheme='http://www.sec.gov/CIK'>0000019871</i:identifier> <i:segment><xbrldi:explicitMember dimension='us-gaap:StatementBusinessSegmentsAxis'>fil:UnallocatedCorporateMember</xbrldi:explicitMember></i:segment> </i:entity> <i:period> <i:startDate>2022-01-01</i:startDate> <i:endDate>2022-06-30</i:endDate> </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='D230101_230630' escape='true'>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'><ix:nonNumeric name='dei:DocumentQuarterlyReport' contextRef='D230101_230630' format='ixt-sec:boolballotbox'>&#9746;</ix:nonNumeric> &#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='D230101_230630' format='ixt:datemonthdayyearen'>June 30, 2023</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'>&#111;</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='D230101_230630' escape='true'>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='D230101_230630' format='ixt-sec:stateprovnameen'>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;<ix:nonNumeric name='dei:EntityTaxIdentificationNumber' contextRef='D230101_230630' escape='true'>36-0904920</ix:nonNumeric>&#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='D230101_230630' escape='true'>901 Frontenac Road</ix:nonNumeric>, <ix:nonNumeric name='dei:EntityAddressCityOrTown' contextRef='D230101_230630' escape='true'>Naperville</ix:nonNumeric>, <ix:nonNumeric name='dei:EntityAddressStateOrProvince' contextRef='D230101_230630' format='ixt-sec:stateprovnameen'>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='D230101_230630' escape='true'>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='D230101_230630' escape='true'>630</ix:nonNumeric>) <ix:nonNumeric name='dei:LocalPhoneNumber' contextRef='D230101_230630' escape='true'>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='D230101_230630' escape='true'>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='D230101_230630' escape='true'>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='D230101_230630' escape='true'>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'>&#111;</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='D230101_230630' escape='true'>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'>&#111;</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'>&#111;</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'>&#111;</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='D230101_230630' format='ixt-sec:entityfilercategoryen'>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='D230101_230630' format='ixt-sec:boolballotbox'>&#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='D230101_230630' format='ixt-sec:boolballotbox'>&#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='D230101_230630' format='ixt-sec:boolballotbox'>&#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='D230101_230630' format='ixt-sec:boolballotbox'>&#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 August 7, 2023 there were <ix:nonFraction name='dei:EntityCommonStockSharesOutstanding' contextRef='I230807' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>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'>June </a><a href="#a3" style='text-decoration:none'>3</a><a href="#a3" style='text-decoration:none'>0</a><a href="#a3" style='text-decoration:none'>, 202</a><a href="#a3" style='text-decoration:none'>3</a><a href="#a3" style='text-decoration:none'> and December 31, 202</a><a href="#a3" style='text-decoration:none'>2</a></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'> and Six</a><a href="#a4" style='text-decoration:none'> Months Ended </a><a href="#a4" style='text-decoration:none'>June</a><a href="#a4" style='text-decoration:none'> 3</a><a href="#a4" style='text-decoration:none'>0</a><a href="#a4" style='text-decoration:none'>, 202</a><a href="#a4" style='text-decoration:none'>3</a><a href="#a4" style='text-decoration:none'> and 202</a><a href="#a4" style='text-decoration:none'>2</a></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'> and Six</a><a href="#a5" style='text-decoration:none'> Months Ended </a><a href="#a5" style='text-decoration:none'>June 30</a><a href="#a5" style='text-decoration:none'>, 202</a><a href="#a5" style='text-decoration:none'>3</a><a href="#a5" style='text-decoration:none'> and 202</a><a href="#a5" style='text-decoration:none'>2</a></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'>Six</a><a href="#a6" style='text-decoration:none'> Months Ended </a><a href="#a6" style='text-decoration:none'>June</a><a href="#a6" style='text-decoration:none'> 3</a><a href="#a6" style='text-decoration:none'>0</a><a href="#a6" style='text-decoration:none'>, 202</a><a href="#a6" style='text-decoration:none'>3</a><a href="#a6" style='text-decoration:none'> and 202</a>2</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>
<table style='border-collapse:collapse'>
<tr>
<td colspan='4' valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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'>June 30, 2023 (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, 2022</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,524,167</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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>4,045,101</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;width:373.5pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0'> &#160;Certificates of deposit</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:76.5pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'><ix:nonFraction name='us-gaap:CertificatesOfDepositAtCarryingValue' contextRef='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,694,000</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;width:75.95pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'><ix:nonFraction name='us-gaap:CertificatesOfDepositAtCarryingValue' contextRef='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,691,000</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 $<ix:nonFraction name='us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent' contextRef='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>146,000</ix:nonFraction> and $<ix:nonFraction name='us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent' contextRef='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>160,000</ix:nonFraction>, respectively</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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>5,904,401</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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>4,975,137</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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='background-color:#CEE7FF;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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>9,423,243</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>9,121,230</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;Prepaid income taxes</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:PrepaidTaxes' contextRef='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>985,119</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:PrepaidTaxes' contextRef='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>509,119</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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='background-color:#CEE7FF;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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>421,999</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>422,747</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>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>19,952,929</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>21,764,334</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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,510,513</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>6,758,266</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>6,758,266</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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>37,778,206</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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>37,080,762</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>46,046,985</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>45,349,541</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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>34,037,051</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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>33,487,748</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>12,009,934</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>11,861,793</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:#CEE7FF;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:#CEE7FF;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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>31,962,863</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>33,626,127</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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,234,323</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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>697,235</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>577,657</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>462,332</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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>84,244</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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>327,961</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>535,498</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>203,717</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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,431,722</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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,691,245</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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'>Deferred income taxes </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:DeferredIncomeTaxLiabilitiesNet' contextRef='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>864,084</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:DeferredIncomeTaxLiabilitiesNet' contextRef='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>948,084</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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>
<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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>3,295,806</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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,639,329</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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='E23Q2' unitRef='UsdPerShare' decimals='INF' format='ixt-sec:numwordsen'><ix:nonFraction name='us-gaap:PreferredStockParOrStatedValuePerShare' contextRef='E22' unitRef='UsdPerShare' decimals='INF' format='ixt-sec:numwordsen'>no</ix:nonFraction></ix:nonFraction> par value, <ix:nonFraction name='us-gaap:PreferredStockSharesAuthorized' contextRef='E23Q2' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'><ix:nonFraction name='us-gaap:PreferredStockSharesAuthorized' contextRef='E22' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>500,000</ix:nonFraction></ix:nonFraction> shares authorized: <ix:nonFraction name='us-gaap:PreferredStockSharesOutstanding' contextRef='E23Q2' unitRef='Shares' decimals='INF' format='ixt-sec:numwordsen'><ix:nonFraction name='us-gaap:PreferredStockSharesOutstanding' contextRef='E22' unitRef='Shares' decimals='INF' format='ixt-sec:numwordsen'>none</ix:nonFraction></ix:nonFraction> outstanding</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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='E23Q2' unitRef='USD' decimals='128' format='ixt:zerodash'>-</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E22' unitRef='USD' decimals='128' format='ixt:zerodash'>-</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='E23Q2' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'><ix:nonFraction name='us-gaap:CommonStockParOrStatedValuePerShare' contextRef='E22' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>1.00</ix:nonFraction></ix:nonFraction> par value, <ix:nonFraction name='us-gaap:CommonStockSharesAuthorized' contextRef='E23Q2' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'><ix:nonFraction name='us-gaap:CommonStockSharesAuthorized' contextRef='E22' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>4,000,000</ix:nonFraction></ix:nonFraction> shares authorized, <ix:nonFraction name='us-gaap:CommonStockSharesIssued' contextRef='E23Q2' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'><ix:nonFraction name='us-gaap:CommonStockSharesIssued' contextRef='E22' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,138,096</ix:nonFraction></ix:nonFraction> shares issued; <ix:nonFraction name='us-gaap:CommonStockSharesOutstanding' contextRef='E23Q2' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'><ix:nonFraction name='us-gaap:CommonStockSharesOutstanding' contextRef='E22' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,138,096</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>447,134</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>31,003,925</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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>33,323,666</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>3,922,098</ix:nonFraction>)&#160;&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>28,667,057</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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>30,986,798</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>31,962,863</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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>33,626,127</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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='8' valign='top' style='background-color:#CEE7FF;width:544.5pt;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='8' valign='top' style='width:544.5pt;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;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:74.15pt;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: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:74.15pt;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:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='3' valign='bottom' style='background-color:#CEE7FF;width:79.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0;text-align:right'>&#160;</p> </td></tr>
<tr style='height:45.45pt'>
<td valign='bottom' style='width:234pt;padding-left:2pt;padding-right:2pt'></td>
<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 June 30, 2023</p> </td>
<td valign='top' 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:74.15pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:center'>Three Months Ended June 30, 2022</p> </td>
<td valign='top' 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:74.15pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:center'>Six Months Ended June 30, 2023</p> </td>
<td valign='bottom' style='width:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:center'>&#160;</p> </td>
<td colspan='2' valign='middle' style='width:74.15pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:center'>Six Months Ended June 30, 2022</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='Y23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>8,050,931</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:74.15pt;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='Y22Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>9,023,398</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:74.15pt;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:Revenues' contextRef='D230101_230630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>16,780,656</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='2' valign='bottom' style='background-color:#CEE7FF;width:74.15pt;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:Revenues' contextRef='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>18,221,094</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='Y23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>8,379,967</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:74.15pt;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='Y22Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>7,577,021</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:74.15pt;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='D230101_230630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>16,632,189</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='width:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='2' valign='bottom' style='width:74.15pt;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='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>14,918,495</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:74.15pt;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: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:74.15pt;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:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='2' valign='bottom' style='background-color:#CEE7FF;width:74.15pt;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='Y23Q2' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>329,036</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:74.15pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GrossProfit' contextRef='Y22Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,446,377</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:74.15pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GrossProfit' contextRef='D230101_230630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>148,467</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='width:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='2' valign='bottom' style='width:74.15pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GrossProfit' contextRef='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>3,302,599</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:SellingGeneralAndAdministrativeExpense' contextRef='Y23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,359,465</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:74.15pt;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:SellingGeneralAndAdministrativeExpense' contextRef='Y22Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,263,921</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:74.15pt;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:SellingGeneralAndAdministrativeExpense' contextRef='D230101_230630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,617,160</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='2' valign='bottom' style='background-color:#CEE7FF;width:74.15pt;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:SellingGeneralAndAdministrativeExpense' contextRef='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,559,585</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:74.15pt;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: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:74.15pt;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:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='2' valign='bottom' style='width:74.15pt;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 profit (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='Y23Q2' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,688,501</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:74.15pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OperatingIncomeLoss' contextRef='Y22Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>182,456</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:74.15pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:OperatingIncomeLoss' contextRef='D230101_230630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,468,693</ix:nonFraction>)&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='2' valign='bottom' style='background-color:#CEE7FF;width:74.15pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OperatingIncomeLoss' contextRef='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>743,014</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:74.15pt;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: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:74.15pt;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:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='2' valign='bottom' style='width:74.15pt;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='Y23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>22,995</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:74.15pt;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='Y22Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>12,448</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:74.15pt;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='D230101_230630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>66,050</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='2' valign='bottom' style='background-color:#CEE7FF;width:74.15pt;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='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>22,203</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='top' 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:74.15pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0;text-align:right'>&#160;</p> </td>
<td valign='top' 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:74.15pt;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:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='2' valign='bottom' style='width:74.15pt;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'>Income (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='Y23Q2' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,665,506</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:74.15pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' contextRef='Y22Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>194,904</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:74.15pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' contextRef='D230101_230630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,402,643</ix:nonFraction>)&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='2' valign='bottom' style='background-color:#CEE7FF;width:74.15pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' contextRef='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>765,217</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'>Provision (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='Y23Q2' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>354,000</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:74.15pt;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='Y22Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>41,000</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:74.15pt;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='D230101_230630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>508,000</ix:nonFraction>)&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='width:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='2' valign='bottom' style='width:74.15pt;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='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>164,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:74.15pt;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: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:74.15pt;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:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='2' valign='bottom' style='background-color:#CEE7FF;width:74.15pt;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 Income (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;(<ix:nonFraction name='us-gaap:NetIncomeLoss' contextRef='Y23Q2' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,311,506</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:74.15pt;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;<ix:nonFraction name='us-gaap:NetIncomeLoss' contextRef='Y22Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>153,904</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:74.15pt;padding-left:2pt;padding-right:2pt;border-bottom:3px double #000000'><p style='font:9pt Arial;margin:0;text-align:right'>$&#160; &#160;(<ix:nonFraction name='us-gaap:NetIncomeLoss' contextRef='D230101_230630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,894,643</ix:nonFraction>)&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='width:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='2' valign='bottom' style='width:74.15pt;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;<ix:nonFraction name='us-gaap:NetIncomeLoss' contextRef='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>601,217</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;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:74.15pt;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: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:74.15pt;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:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='2' valign='bottom' style='background-color:#CEE7FF;width:74.15pt;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'>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;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:74.15pt;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: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:74.15pt;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:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='2' valign='bottom' style='width:74.15pt;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 net income (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='Y23Q2' sign='-' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>1.36</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:74.15pt;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='Y22Q2' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.16</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:74.15pt;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='D230101_230630' sign='-' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>1.96</ix:nonFraction>)&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='2' valign='bottom' style='background-color:#CEE7FF;width:74.15pt;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='D220101_220630' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.62</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 income (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='Y23Q2' sign='-' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>1.36</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:74.15pt;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='Y22Q2' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.16</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:74.15pt;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='D230101_230630' sign='-' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>1.96</ix:nonFraction>)&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='width:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='2' valign='bottom' style='width:74.15pt;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='D220101_220630' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.62</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;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:74.15pt;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: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:74.15pt;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:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='2' valign='bottom' style='background-color:#CEE7FF;width:74.15pt;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'>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:74.15pt;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:74.15pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='width:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='2' valign='bottom' style='width:74.15pt;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='Y23Q2' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>966,132</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='top' 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:74.15pt;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='Y22Q2' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>966,132</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='top' 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:74.15pt;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='D230101_230630' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>966,132</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='3' valign='bottom' style='background-color:#CEE7FF;width:79.2pt;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='D220101_220630' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='Y23Q2' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>966,132</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='top' 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:74.15pt;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='Y22Q2' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>966,132</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='top' 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:74.15pt;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='D230101_230630' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>966,132</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='width:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td colspan='3' valign='bottom' style='width:79.2pt;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='D220101_220630' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='top' 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:74.15pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0'>&#160;</p> </td>
<td valign='top' 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:74.15pt;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:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0'>&#160;</p> </td>
<td colspan='3' valign='bottom' style='background-color:#CEE7FF;width:79.2pt;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='Y23Q2' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.22</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='top' 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:74.15pt;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='Y22Q2' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.22</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='top' 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:74.15pt;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='D230101_230630' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.44</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='width:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;color:#000000;text-align:right'>&#160;</p> </td>
<td colspan='3' valign='bottom' style='width:79.2pt;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='D220101_220630' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.44</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='top' 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='top' style='background-color:#CEE7FF;width:74.15pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0'>&#160;</p> </td>
<td valign='top' 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='top' style='background-color:#CEE7FF;width:74.15pt;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:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0'>&#160;</p> </td>
<td colspan='3' valign='bottom' style='background-color:#CEE7FF;width:79.2pt;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='top' style='width:5pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0'>&#160;</p> </td>
<td valign='top' style='width:74.15pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0'>&#160;</p> </td>
<td valign='top' style='width:5pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0'>&#160;</p> </td>
<td valign='top' style='width:74.15pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0'>&#160;</p> </td>
<td valign='bottom' style='width:7.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0'>&#160;</p> </td>
<td colspan='3' valign='bottom' style='width:79.2pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0'>&#160;</p> </td></tr>
<tr>
<td colspan='8' valign='bottom' style='background-color:#CEE7FF;width:544.5pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Times New Roman;margin:0'><span style='font-family:Arial'> See Notes to the Condensed Consolidated Financial Statements </span></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'>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:103.1pt;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>
<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, 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' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>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' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>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' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>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'>(<ix:nonFraction name='us-gaap:Dividends' contextRef='Y23Q1_StEqComps-RetainedEarnings' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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'><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' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>0</ix:nonFraction></p> </td>
<td valign='bottom' style='width:45.75pt;border-top:0.5pt solid #000000'><p style='font:7pt Arial;margin:0;text-align:right'><ix:nonFraction name='us-gaap:CommonStockSharesOutstanding' contextRef='E23Q1_StEqComps-CommonStock' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>966,132</ix:nonFraction></p> </td>
<td valign='bottom' style='border-top:0.5pt solid #000000'><p style='font:8pt Arial;margin:0;text-align:right'>$ <ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E23Q1_StEqComps-CommonStock' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,138,096</ix:nonFraction></p> </td>
<td valign='bottom' style='width:55.6pt;border-top:0.5pt solid #000000'><p style='font:8pt Arial;margin:0;text-align:right'>$ &#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E23Q1_StEqComps-AddPaidInCap' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>447,134</ix:nonFraction></p> </td>
<td valign='bottom' style='width:63pt;border-top:0.5pt solid #000000'><p style='font:8pt Arial;margin:0;text-align:right'>$ &#160;<ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E23Q1_StEqComps-RetainedEarnings' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>32,527,980</ix:nonFraction></p> </td>
<td valign='bottom' style='width:44.7pt;border-top: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='E23Q1_StEqComps-TreasuryStockCommon' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>171,964</ix:nonFraction></span></p> </td>
<td valign='bottom' style='border-top:0.5pt solid #000000'><p style='font:8pt Arial;margin:0;text-align:right'>$ (<ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E23Q1_StEqComps-TreasuryStockCommon' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>3,922,098</ix:nonFraction>)</p> </td>
<td valign='bottom' style='border-top: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='E23Q1' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>30,191,112</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'>Net Loss</span></p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:54.75pt'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:45.75pt'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:55.6pt'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:63pt'><p style='font:7pt Arial;margin:0;text-align:right'><span style='font-size:8pt'>(<ix:nonFraction name='us-gaap:NetIncomeLoss' contextRef='Y23Q2_StEqComps-RetainedEarnings' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,311,506</ix:nonFraction>)</span></p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:44.7pt'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF'><p style='font:7pt Arial;margin:0;text-align:right'><span style='font-size:8pt'>(<ix:nonFraction name='us-gaap:NetIncomeLoss' contextRef='Y23Q2' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,311,506</ix:nonFraction>)</span></p> </td></tr>
<tr style='height:12.95pt'>
<td valign='bottom'><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='Y23Q2' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.22</ix:nonFraction></span> <span style='font-size:8pt'>per share)</span></p> </td>
<td valign='bottom' style='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='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='border-bottom:0.5pt solid #000000'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='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='width:63pt;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:Dividends' contextRef='Y23Q2_StEqComps-RetainedEarnings' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>212,549</ix:nonFraction>)</span></p> </td>
<td valign='bottom' style='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='border-bottom:0.5pt solid #000000'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='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:Dividends' contextRef='Y23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>212,549</ix:nonFraction>)</span></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, June 30, 2023</span></p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:54.75pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:7pt Arial;margin:0;text-align:center'><span style='font-size:8pt'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;$ <ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E23Q2_StEqComps-PrefStock' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>0</ix:nonFraction></span></p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:45.75pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:7pt Arial;margin:0;text-align:right'><ix:nonFraction name='us-gaap:CommonStockSharesOutstanding' contextRef='E23Q2_StEqComps-CommonStock' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>966,132</ix:nonFraction></p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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:StockholdersEquity' contextRef='E23Q2_StEqComps-CommonStock' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,138,096</ix:nonFraction></span></p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:55.6pt;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'>$ &#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E23Q2_StEqComps-AddPaidInCap' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>447,134</ix:nonFraction></span></p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:63pt;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'>$ &#160;<ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E23Q2_StEqComps-RetainedEarnings' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>31,003,925</ix:nonFraction></span></p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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-size:8pt'><ix:nonFraction name='us-gaap:TreasuryStockCommonShares' contextRef='E23Q2_StEqComps-TreasuryStockCommon' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>171,964</ix:nonFraction></span></p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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:StockholdersEquity' contextRef='E23Q2_StEqComps-TreasuryStockCommon' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>3,922,098</ix:nonFraction>)</span></p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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'>$ &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>28,667,057</ix:nonFraction></span></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;border-top:3px double #000000'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='width:45.75pt;border-top:3px double #000000'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='border-top:3px double #000000'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='width:55.6pt;border-top:3px double #000000'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='width:63pt;border-top:3px double #000000'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='width:44.7pt;border-top:3px double #000000'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='border-top:3px double #000000'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='border-top:3px double #000000'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</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'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:45.75pt'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:55.6pt'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:63pt'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:44.7pt'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td></tr>
<tr style='height:12.95pt'>
<td valign='bottom'><p style='font:7pt Arial;margin:0'><span style='font-size:8pt'>Balance, December 31, 2021</span></p> </td>
<td valign='bottom' style='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='E21_StEqComps-PrefStock' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>0</ix:nonFraction></p> </td>
<td valign='bottom' style='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='E21_StEqComps-CommonStock' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>966,132</ix:nonFraction></span></p> </td>
<td valign='bottom'><p style='font:8pt Arial;margin:0;text-align:right'>$ <ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E21_StEqComps-CommonStock' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,138,096</ix:nonFraction></p> </td>
<td valign='bottom' style='width:55.6pt'><p style='font:8pt Arial;margin:0;text-align:right'>$ &#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E21_StEqComps-AddPaidInCap' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>447,134</ix:nonFraction></p> </td>
<td valign='bottom' style='width:63pt'><p style='font:8pt Arial;margin:0;text-align:right'>$ &#160;<ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E21_StEqComps-RetainedEarnings' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>31,306,233</ix:nonFraction></p> </td>
<td valign='bottom' style='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='E21_StEqComps-TreasuryStockCommon' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>171,964</ix:nonFraction></span></p> </td>
<td valign='bottom'><p style='font:8pt Arial;margin:0;text-align:right'>$ (<ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E21_StEqComps-TreasuryStockCommon' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>3,922,098</ix:nonFraction>)</p> </td>
<td valign='bottom'><p style='font:8pt Arial;margin:0;text-align:right'>$ &#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E21' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>28,969,365</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'>Net Income</span></p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:54.75pt'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:45.75pt'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:55.6pt'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:63pt'><p style='font:8pt Arial;margin:0;text-align:right'><ix:nonFraction name='us-gaap:NetIncomeLoss' contextRef='Y22Q1_StEqComps-RetainedEarnings' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>447,313</ix:nonFraction></p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:44.7pt'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF'><p style='font:8pt Arial;margin:0;text-align:right'><ix:nonFraction name='us-gaap:NetIncomeLoss' contextRef='Y22Q1' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>447,313</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'>Dividends Declared</span> <span style='font-size:8pt'>($<ix:nonFraction name='us-gaap:CommonStockDividendsPerShareDeclared' contextRef='Y22Q1' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.22</ix:nonFraction></span> <span style='font-size:8pt'>per share)</span></p> </td>
<td valign='bottom' style='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='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='border-bottom:0.5pt solid #000000'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='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='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='Y22Q1_StEqComps-RetainedEarnings' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>212,549</ix:nonFraction>)</p> </td>
<td valign='bottom' style='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='border-bottom:0.5pt solid #000000'><p style='font:7pt Arial;margin:0;text-align:right'>&#160;</p> </td>
<td valign='bottom' style='border-bottom:0.5pt solid #000000'><p style='font:8pt Arial;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:Dividends' contextRef='Y22Q1' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>212,549</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'>Balance, March 31, 2022</span></p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:54.75pt;border-top: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='E22Q1_StEqComps-PrefStock' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>0</ix:nonFraction></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'><span style='font-size:8pt'><ix:nonFraction name='us-gaap:CommonStockSharesOutstanding' contextRef='E22Q1_StEqComps-CommonStock' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>966,132</ix:nonFraction></span></p> </td>
<td valign='bottom' style='background-color:#CEE7FF;border-top:0.5pt solid #000000'><p style='font:8pt Arial;margin:0;text-align:right'>$ <ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E22Q1_StEqComps-CommonStock' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,138,096</ix:nonFraction></p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:55.6pt;border-top:0.5pt solid #000000'><p style='font:8pt Arial;margin:0;text-align:right'>$ &#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E22Q1_StEqComps-AddPaidInCap' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>447,134</ix:nonFraction></p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:63pt;border-top:0.5pt solid #000000'><p style='font:8pt Arial;margin:0;text-align:right'>$ &#160;<ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E22Q1_StEqComps-RetainedEarnings' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>31,540,997</ix:nonFraction></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'><span style='font-family:Arial Narrow;color:#339966'> &#160;&#160;</span><span style='font-size:8pt'><ix:nonFraction name='us-gaap:TreasuryStockCommonShares' contextRef='E22Q1_StEqComps-TreasuryStockCommon' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>171,964</ix:nonFraction></span></p> </td>
<td valign='bottom' style='background-color:#CEE7FF;border-top:0.5pt solid #000000'><p style='font:8pt Arial;margin:0;text-align:right'>$ (<ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E22Q1_StEqComps-TreasuryStockCommon' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>3,922,098</ix:nonFraction>)</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;border-top:0.5pt solid #000000'><p style='font:8pt Arial;margin:0;text-align:right'>$ &#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E22Q1' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>29,204,129</ix:nonFraction></p> </td></tr>
<tr style='height:12.95pt'>
<td valign='bottom'><p style='font:6pt Arial;margin:0'><span style='font-size:8pt'>Net Income</span></p> </td>
<td valign='bottom' style='width:54.75pt'><p style='font:6pt Arial;margin:0'>&#160;</p> </td>
<td valign='bottom' style='width:45.75pt'><p style='font:6pt Arial;margin:0'>&#160;</p> </td>
<td valign='bottom'><p style='font:6pt Arial;margin:0'>&#160;</p> </td>
<td valign='bottom' style='width:55.6pt'><p style='font:6pt Arial;margin:0'>&#160;</p> </td>
<td valign='bottom' style='width:63pt'><p style='font:6pt Arial;margin:0;text-align:right'><span style='font-size:8pt'><ix:nonFraction name='us-gaap:NetIncomeLoss' contextRef='Y22Q2_StEqComps-RetainedEarnings' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>153,904</ix:nonFraction></span></p> </td>
<td valign='bottom' style='width:44.7pt'><p style='font:6pt Arial;margin:0'>&#160;</p> </td>
<td valign='bottom'><p style='font:6pt Arial;margin:0'>&#160;</p> </td>
<td valign='bottom'><p style='font:6pt Arial;margin:0;text-align:right'><span style='font-size:8pt'><ix:nonFraction name='us-gaap:NetIncomeLoss' contextRef='Y22Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>153,904</ix:nonFraction></span></p> </td></tr>
<tr style='height:12.95pt'>
<td valign='bottom' style='background-color:#CEE7FF'><p style='font:6pt Arial;margin:0'><span style='font-size:8pt'>Dividends Declared</span><span style='font-size:7pt'> </span><span style='font-size:8pt'>($<ix:nonFraction name='us-gaap:CommonStockDividendsPerShareDeclared' contextRef='Y22Q2' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.22</ix:nonFraction></span><span style='font-size:7pt'> </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:6pt Arial;margin:0'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:45.75pt;border-bottom:0.5pt solid #000000'><p style='font:6pt Arial;margin:0'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;border-bottom:0.5pt solid #000000'><p style='font:6pt Arial;margin:0'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:55.6pt;border-bottom:0.5pt solid #000000'><p style='font:6pt Arial;margin:0'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:63pt;border-bottom:0.5pt solid #000000'><p style='font:6pt Arial;margin:0;text-align:right'><span style='font-size:7pt'> </span><span style='font-size:8pt'>(<ix:nonFraction name='us-gaap:Dividends' contextRef='Y22Q2_StEqComps-RetainedEarnings' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>212,549</ix:nonFraction>)</span></p> </td>
<td valign='bottom' style='background-color:#CEE7FF;width:44.7pt;border-bottom:0.5pt solid #000000'><p style='font:6pt Arial;margin:0'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;border-bottom:0.5pt solid #000000'><p style='font:6pt Arial;margin:0'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;border-bottom:0.5pt solid #000000'><p style='font:6pt Arial;margin:0;text-align:right'><span style='font-size:8pt'>(<ix:nonFraction name='us-gaap:Dividends' contextRef='Y22Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>212,549</ix:nonFraction>)</span></p> </td></tr>
<tr style='height:12.95pt'>
<td valign='bottom'><p style='font:6pt Arial;margin:0'><span style='font-size:8pt'>Balance, June 30, 2022</span></p> </td>
<td valign='bottom' style='width:54.75pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:6pt Arial;margin:0;text-align:center'><span style='font-size:8pt'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;$ <ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E22Q2_StEqComps-PrefStock' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>0</ix:nonFraction></span></p> </td>
<td valign='bottom' style='width:45.75pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:6pt Arial;margin:0;text-align:right'><span style='font-size:7pt'><ix:nonFraction name='us-gaap:CommonStockSharesOutstanding' contextRef='E22Q2_StEqComps-CommonStock' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>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:6pt Arial;margin:0;text-align:right'><span style='font-size:8pt'>$ <ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E22Q2_StEqComps-CommonStock' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,138,096</ix:nonFraction></span></p> </td>
<td valign='bottom' style='width:55.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:6pt Arial;margin:0;text-align:right'><span style='font-size:8pt'>$ &#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E22Q2_StEqComps-AddPaidInCap' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>447,134</ix:nonFraction></span></p> </td>
<td valign='bottom' style='width:63pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:6pt Arial;margin:0;text-align:right'><span style='font-size:8pt'>$ &#160;<ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E22Q2_StEqComps-RetainedEarnings' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>31,482,352</ix:nonFraction></span></p> </td>
<td valign='bottom' style='width:44.7pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:6pt Arial;margin:0;text-align:right'><span style='font-size:8pt'><ix:nonFraction name='us-gaap:TreasuryStockCommonShares' contextRef='E22Q2_StEqComps-TreasuryStockCommon' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>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:6pt Arial;margin:0;text-align:right'><span style='font-size:8pt'>$ (<ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E22Q2_StEqComps-TreasuryStockCommon' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>3,922,098</ix:nonFraction>)</span></p> </td>
<td valign='bottom' style='border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:6pt Arial;margin:0;text-align:right'><span style='font-size:8pt'>$ &#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E22Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>29,145,484</ix:nonFraction></span></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:#CEE7FF;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:#CEE7FF;width:279pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0'>&#160;</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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'>Six Months Ended June 30, 2023</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'>Six Months Ended June 30, 2022</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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:#CEE7FF;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 Income (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'>$ &#160;&#160;&#160;(<ix:nonFraction name='us-gaap:NetIncomeLoss' contextRef='D230101_230630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,894,643</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: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='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>601,217</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;width:279pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0'>Adjustments to reconcile net income (loss) to net cash used in operating activities: </p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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:#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: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='D230101_230630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>612,107</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: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='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>640,848</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;width:279pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0'><span style='color:#833C0B'> &#160;</span>Gain on disposal of equipment</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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='D230101_230630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>31,500</ix:nonFraction>)&#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: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='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='D230101_230630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>84,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: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='D220101_220630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>46,000</ix:nonFraction>)&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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:#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: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='D230101_230630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>929,264</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='D220101_220630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,194,243</ix:nonFraction>)&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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='background-color:#CEE7FF;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='D230101_230630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>302,013</ix:nonFraction>)&#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: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='D220101_220630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,095,593</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;Other current assets</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:IncreaseDecreaseInOtherOperatingAssets' contextRef='D230101_230630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>475,252</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:IncreaseDecreaseInOtherOperatingAssets' contextRef='D220101_220630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>78,145</ix:nonFraction>)&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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='background-color:#CEE7FF;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='D230101_230630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>537,088</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: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='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>382,910</ix:nonFraction>&#160;&#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;Accrued wages and salaries</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:IncreaseDecreaseInEmployeeRelatedLiabilities' contextRef='D230101_230630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>115,325</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: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='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>235,473</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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='background-color:#CEE7FF;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='D230101_230630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>243,717</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: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='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>91,825</ix:nonFraction>&#160;&#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;</span> Unearned revenue and customer deposits</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:IncreaseDecreaseInCustomerAdvancesAndDeposits' contextRef='D230101_230630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>331,781</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:IncreaseDecreaseInCustomerAdvancesAndDeposits' contextRef='D220101_220630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>75,713</ix:nonFraction>)&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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='background-color:#CEE7FF;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='D230101_230630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,364,088</ix:nonFraction>)&#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: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='D220101_220630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>537,421</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:#CEE7FF;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='background-color:#CEE7FF;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:#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: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;Capital expenditures</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:PaymentsToAcquireProductiveAssets' contextRef='D230101_230630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>760,248</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:PaymentsToAcquireProductiveAssets' contextRef='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>211,703</ix:nonFraction>)&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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='background-color:#CEE7FF;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='D230101_230630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>31,500</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: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='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>0</ix:nonFraction>&#160;&#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 certificates of deposit</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:ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities' contextRef='D230101_230630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>997,000</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: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='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>0</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;width:279pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0'> &#160;&#160;&#160;Net cash provided by (used in) investing activities</p> </td>
<td valign='bottom' style='background-color:#CEE7FF;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='D230101_230630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>268,252</ix:nonFraction>&#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: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='D220101_220630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>211,703</ix:nonFraction>)&#160;&#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:#CEE7FF;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:#CEE7FF;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:#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: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='D230101_230630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>425,098</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='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>425,098</ix:nonFraction>)&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='D230101_230630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>425,098</ix:nonFraction>)&#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: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='D220101_220630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>425,098</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:#CEE7FF;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:#CEE7FF;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='D230101_230630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,520,934</ix:nonFraction>)&#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: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='D220101_220630' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,174,222</ix:nonFraction>)&#160;&#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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>4,045,101</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: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='E21' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,036,954</ix:nonFraction>&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;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:#CEE7FF;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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,524,167</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: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;&#160;&#160;<ix:nonFraction name='us-gaap:CashAndCashEquivalentsAtCarryingValue' contextRef='E22Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>862,732</ix:nonFraction>&#160;&#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:#CEE7FF;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:#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: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='D230101_230630' escape='true'><ix:nonNumeric name='us-gaap:BasisOfAccountingPolicyPolicyTextBlock' contextRef='D230101_230630' escape='true'><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 June 30, 2023 (unaudited) and December 31, 2022 (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, 2022.</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 six month period ended June 30, 2023 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 June 2016, the FASB issued ASU No. 2016-13, Financial Instruments&#160;- Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments and in November 2018 issued an amendment, ASU 2018-19, Codification Improvements to Topic 326, Financial Instruments &#8211;&#160;Credit Losses. &#160;ASU 2016-13 amends the impairment model by requiring entities to use a forward-looking approach based on expected losses rather than incurred losses to estimate credit losses on certain types of financial instruments, including trade receivables. This may result in the earlier recognition of allowances for losses. ASU 2016-13 and ASU 2018-19 should be applied on either a prospective transition or modified-retrospective approach depending on the subtopic. &#160;ASU 2016-13 is effective for annual periods beginning after December 15, 2022, including interim periods within those fiscal years, with early adoption permitted. The Company adopted this ASU on January 1, 2023, using the modified retrospective approach. The adoption did not result in the recognition of a cumulative adjustment to beginning retained earnings, nor did it have a material impact on the condensed consolidated financial statements.</p> </ix:nonNumeric></ix:nonNumeric><p style='font:10pt Arial;margin:0'>&#160;</p> <ix:nonNumeric name='us-gaap:ConcentrationRiskDisclosureTextBlock' contextRef='D230101_230630' escape='true'><ix:nonNumeric name='us-gaap:ConcentrationRiskCreditRisk' contextRef='D230101_230630' escape='true'><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 in part 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='D230101_230630' escape='true'><ix:nonNumeric name='us-gaap:CommitmentsAndContingenciesPolicyTextBlock' contextRef='D230101_230630' escape='true'><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.</p> </ix:nonNumeric></ix:nonNumeric><p style='font:10pt Arial;margin:0'>&#160;</p> <ix:nonNumeric name='us-gaap:RevenueFromContractWithCustomerTextBlock' contextRef='D230101_230630' escape='true' continuedAt='c1'><ix:nonNumeric name='us-gaap:RevenueFromContractWithCustomerPolicyTextBlock' contextRef='D230101_230630' escape='true'><p style='font:10pt Arial;margin:0'>4. &#160;Revenue&#8212;The Company operates in the fastener industry and is in the business of manufacturing 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 second quarter of 2023, the Company did not realize any revenue related to such contracts and $379,000 is the remaining performance obligation under such contracts.</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 income. &#160;These adjustments primarily relate to customer returns and allowances. &#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 June 30, 2023 and December 31, 2022 reserves for warranty claims were not material. &#160;Cash received by the Company prior to shipment 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 income.</p> <p style='font:10pt Arial;margin:0;color:#000000'>&#160;</p> </ix:nonNumeric><p style='font:10pt Arial;margin:0'>&#160;</p> <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='D230101_230630_ProductOrService-EndMarket' escape='true'><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 June 30, 2023:</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='Y23Q2_ProductOrService-Automotive_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>4,959,381</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='Y23Q2_ProductOrService-Automotive_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>38,223</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='Y23Q2_ProductOrService-Automotive' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>4,997,604</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='Y23Q2_ProductOrService-Nonautomotive_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,401,732</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='Y23Q2_ProductOrService-Nonautomotive_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>651,595</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='Y23Q2_ProductOrService-Nonautomotive' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>3,053,327</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='Y23Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>7,361,113</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;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y23Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>689,818</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='Y23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>8,050,931</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 June 30, 2022:</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='Y22Q2_ProductOrService-Automotive_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>4,550,809</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='Y22Q2_ProductOrService-Automotive_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>59,818</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='Y22Q2_ProductOrService-Automotive' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>4,610,627</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='Y22Q2_ProductOrService-Nonautomotive_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>3,508,803</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='Y22Q2_ProductOrService-Nonautomotive_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>903,968</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='Y22Q2_ProductOrService-Nonautomotive' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>4,412,771</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='Y22Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>8,059,612</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;&#160;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y22Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>963,786</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='Y22Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>9,023,398</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>
<tr>
<td valign='bottom' style='width:162pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;color:#000000'>Six Months Ended June 30, 2023:</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='D230101_230630_ProductOrService-Automotive_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>9,965,571</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='D230101_230630_ProductOrService-Automotive_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>83,101</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;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='D230101_230630_ProductOrService-Automotive' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>10,048,672</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='D230101_230630_ProductOrService-Nonautomotive_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>5,252,355</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='D230101_230630_ProductOrService-Nonautomotive_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,479,629</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='D230101_230630_ProductOrService-Nonautomotive' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>6,731,984</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;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='D230101_230630_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>15,217,926</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;&#160;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='D230101_230630_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,562,730</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;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='D230101_230630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>16,780,656</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'>Six Months Ended June 30, 2022:</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='D220101_220630_ProductOrService-Automotive_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>9,454,992</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;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='D220101_220630_ProductOrService-Automotive_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>101,652</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='D220101_220630_ProductOrService-Automotive' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>9,556,644</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='D220101_220630_ProductOrService-Nonautomotive_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>6,758,453</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='D220101_220630_ProductOrService-Nonautomotive_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,905,997</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='D220101_220630_ProductOrService-Nonautomotive' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>8,664,450</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;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='D220101_220630_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>16,213,445</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;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='D220101_220630_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,007,649</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;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>18,221,094</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='D230101_230630_StGeo-Location' escape='true'><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 June 30, 2023:</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='Y23Q2_StGeo-US_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>6,137,476</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;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y23Q2_StGeo-US_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>654,546</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='Y23Q2_StGeo-US' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>6,792,022</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='Y23Q2_StGeo-NonUs_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,223,637</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='Y23Q2_StGeo-NonUs_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>35,272</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='Y23Q2_StGeo-NonUs' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,258,909</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='Y23Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>7,361,113</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;&#160;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y23Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>689,818</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='Y23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>8,050,931</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 June 30, 2022:</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='Y22Q2_StGeo-US_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>6,796,779</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='Y22Q2_StGeo-US_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>932,468</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='Y22Q2_StGeo-US' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>7,729,247</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='Y22Q2_StGeo-NonUs_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,262,833</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='Y22Q2_StGeo-NonUs_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>31,318</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='Y22Q2_StGeo-NonUs' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,294,151</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='Y22Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>8,059,612</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='Y22Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>963,786</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='Y22Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>9,023,398</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>
<tr>
<td valign='bottom' style='width:157.5pt;padding-left:2pt;padding-right:2pt'><p style='font:9pt Arial;margin:0;color:#000000'>Six Months Ended June 30, 2023</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;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='D230101_230630_StGeo-US_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>12,529,223</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;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='D230101_230630_StGeo-US_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,441,117</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;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='D230101_230630_StGeo-US' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>13,970,340</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='D230101_230630_StGeo-NonUs_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,688,703</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='D230101_230630_StGeo-NonUs_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>121,613</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='D230101_230630_StGeo-NonUs' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,810,316</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;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='D230101_230630_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>15,217,926</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;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='D230101_230630_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,562,730</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;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='D230101_230630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>16,780,656</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'>Six Months Ended June 30, 2022</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;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='D220101_220630_StGeo-US_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>13,556,908</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;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='D220101_220630_StGeo-US_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,936,618</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;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='D220101_220630_StGeo-US' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>15,493,526</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='D220101_220630_StGeo-NonUs_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,656,537</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='D220101_220630_StGeo-NonUs_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>71,031</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='D220101_220630_StGeo-NonUs' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,727,568</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;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='D220101_220630_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>16,213,445</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;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='D220101_220630_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,007,649</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;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='D220101_220630' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>18,221,094</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='D230101_230630' escape='true'><ix:nonNumeric name='us-gaap:IncomeTaxPolicyTextBlock' contextRef='D230101_230630' escape='true'><p style='font:10pt Arial;margin:0'>5. &#160;The Company&#8217;s effective tax rates were approximately (21.3)% and 21.0% for the second quarter of 2023 and 2022, respectively, and (21.1)% and 21.4% for the six months ended June 30, 2023 and 2022, 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 2019 through 2022 tax years are subject to examination by the Internal Revenue Service (&#8220;IRS&#8221;). &#160;&#160;While it may be possible that a reduction could occur with respect to the Company&#8217;s unrecognized tax benefits as an outcome of an IRS examination, 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 have been extended on any of the Company&#8217;s federal income tax filings. The statute of limitations on the Company&#8217;s 2019 through 2022 federal income tax returns will expire on September 15, 2023 through 2026, 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 2019 through 2022 tax years remain subject to examination by various state authorities with the latest closing period on October 31, 2026. &#160;The Company is not currently under examination by any state authority for income tax purposes and no statutes 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='D230101_230630' escape='true'><ix:nonNumeric name='us-gaap:InventoryPolicyTextBlock' contextRef='D230101_230630' escape='true'><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 is as follows:</span> </p> <ix:nonNumeric name='us-gaap:ScheduleOfInventoryCurrentTableTextBlock' contextRef='D230101_230630' escape='true'><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'>June 30, 2023</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, 2022</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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>4,466,826</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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>4,460,071</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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,939,353</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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,747,427</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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,638,064</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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,534,732</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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>10,044,243</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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>9,742,230</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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>621,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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>621,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='E23Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>9,423,243</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='E22' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>9,121,230</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='D230101_230630' escape='true'><ix:nonNumeric name='us-gaap:SegmentReportingPolicyPolicyTextBlock' contextRef='D230101_230630' escape='true'><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 is as follows:</p> <ix:nonNumeric name='us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock' contextRef='D230101_230630' escape='true'><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>
<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'>Other</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 June 30, 2023:</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;<ix:nonFraction name='us-gaap:Revenues' contextRef='Y23Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>7,361,113</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;<ix:nonFraction name='us-gaap:Revenues' contextRef='Y23Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>689,818</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='Y23Q2_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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;8,050,931&#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='Y23Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>272,679</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='Y23Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>30,732</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='Y23Q2_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,664</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'>306,075&#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</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='Y23Q2_StBusnSeg-Fastener' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,093,218</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='Y23Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>87,166</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='Y23Q2_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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'>(1,006,052)&#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='Y23Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='Y23Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='Y23Q2_StBusnSeg-UnallocatedCorporate' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>681,199</ix:nonFraction>)&#160;&#160;</p> </td>
<td valign='bottom' style='width:75.6pt'><p style='font:8pt Arial;margin:0;text-align:right'>(681,199)&#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='Y23Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='Y23Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='Y23Q2_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>21,745</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'>21,745&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='width:190.95pt'><p style='font:8pt Arial;margin:0'>Income 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;(1,665,506)&#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='Y23Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>406,629</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='Y23Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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:PaymentsToAcquirePropertyPlantAndEquipment' contextRef='Y23Q2_StBusnSeg-UnallocatedCorporate' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>59,800</ix:nonFraction>)&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='width:75.6pt'><p style='font:8pt Arial;margin:0;text-align:right'>346,829&#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='E23Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>5,543,477</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='E23Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>360,924</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='E23Q2_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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,904,401&#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='E23Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>7,940,159</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='E23Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,483,084</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='E23Q2_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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'>9,423,243&#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='E23Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>9,759,709</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='E23Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,242,033</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='E23Q2_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,008,192</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'>12,009,934&#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='E23Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='E23Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='E23Q2_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>4,625,285</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,625,285&#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;31,962,863&#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 June 30, 2022:</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;<ix:nonFraction name='us-gaap:Revenues' contextRef='Y22Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>8,059,612</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;<ix:nonFraction name='us-gaap:Revenues' contextRef='Y22Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>963,786</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='Y22Q2_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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;9,023,398&#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='Y22Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>281,841</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='Y22Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>33,363</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='Y22Q2_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>5,220</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='width:75.6pt'><p style='font:8pt Arial;margin:0;text-align:right'>320,424&#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</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='Y22Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>499,531</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='Y22Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>191,011</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='Y22Q2_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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'>690,542&#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='Y22Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='Y22Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='Y22Q2_StBusnSeg-UnallocatedCorporate' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>497,736</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'>(497,736)&#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='Y22Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='Y22Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='Y22Q2_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,098</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'>2,098&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;width:190.95pt'><p style='font:8pt Arial;margin:0'>Income 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;194,904&#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='Y22Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>22,682</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='Y22Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='Y22Q2_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>68,427</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'>91,109&#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='E22Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>6,330,240</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='E22Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>511,987</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='E22Q2_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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,842,227&#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='E22Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>8,341,612</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='E22Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,273,761</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='E22Q2_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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,615,373&#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='E22Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>9,396,988</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='E22Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,367,179</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='E22Q2_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,260,552</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='width:75.6pt'><p style='font:8pt Arial;margin:0;text-align:right'>12,044,719&#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='E22Q2_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='E22Q2_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='E22Q2_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>4,028,553</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'>4,028,553&#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;32,530,872&#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'>Six Months Ended June 30, 2023:</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;<ix:nonFraction name='us-gaap:Revenues' contextRef='D230101_230630_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>15,217,926</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;<ix:nonFraction name='us-gaap:Revenues' contextRef='D230101_230630_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,562,730</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='D230101_230630_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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;16,780,656&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='width:190.95pt'><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>
<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='D230101_230630_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>545,315</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='D230101_230630_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>61,464</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='D230101_230630_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>5,328</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'>612,107&#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</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='D230101_230630_StBusnSeg-Fastener' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,521,719</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='D230101_230630_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>276,481</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='D230101_230630_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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'>(1,245,238)&#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='D230101_230630_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='D230101_230630_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='D230101_230630_StBusnSeg-UnallocatedCorporate' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,219,736</ix:nonFraction>)&#160;&#160;</p> </td>
<td valign='bottom' style='width:75.6pt'><p style='font:8pt Arial;margin:0;text-align:right'>(1,219,736)&#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='D230101_230630_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='D230101_230630_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='D230101_230630_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>62,331</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'>62,331&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='width:190.95pt'><p style='font:8pt Arial;margin:0'>Income 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;(2,402,643)&#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='D230101_230630_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>742,695</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='D230101_230630_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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:PaymentsToAcquirePropertyPlantAndEquipment' contextRef='D230101_230630_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>17,553</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='width:75.6pt'><p style='font:8pt Arial;margin:0;text-align:right'>760,248&#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'>&#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'>Six Months Ended June 30, 2022:</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;<ix:nonFraction name='us-gaap:Revenues' contextRef='D220101_220630_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>16,213,445</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;<ix:nonFraction name='us-gaap:Revenues' contextRef='D220101_220630_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>2,007,649</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='D220101_220630_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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;18,221,094&#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='D220101_220630_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>563,682</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='D220101_220630_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>66,726</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='D220101_220630_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>10,440</ix:nonFraction>&#160;&#160;&#160;</p> </td>
<td valign='bottom' style='width:75.6pt'><p style='font:8pt Arial;margin:0;text-align:right'>640,848&#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</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='D220101_220630_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>1,335,038</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='D220101_220630_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>423,390</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='D220101_220630_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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'>1,758,428&#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='D220101_220630_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='D220101_220630_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='D220101_220630_StBusnSeg-UnallocatedCorporate' sign='-' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>997,064</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'>(997,064)&#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='D220101_220630_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='D220101_220630_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='D220101_220630_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>3,853</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'>3,853&#160;&#160;&#160;</p> </td></tr>
<tr>
<td valign='bottom' style='background-color:#CEE7FF;width:190.95pt'><p style='font:8pt Arial;margin:0'>Income 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;&#160;&#160;765,217&#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='D220101_220630_StBusnSeg-Fastener' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>178,346</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='D220101_220630_StBusnSeg-AssemblyEquipment' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>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='D220101_220630_StBusnSeg-UnallocatedCorporate' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>33,357</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'>211,703&#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> </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;color:#000000'>Net sales for the second quarter of 2023 were $8,050,931 compared to $9,023,398 in the second quarter of 2022, a decline of $972,467, or 10.8%. For the first half of 2023, net sales totaled $16,780,656 compared to $18,221,094 in the first half of 2022, a decline of $1,440,438, or 7.9%. &#160;Both the fastener segment and the assembly equipment segment have experienced lower sales in the second quarter and current year to date. &#160;Lower sales combined with higher operating costs in the current year resulted in a net loss of $(1,311,506), or $(1.36) per share, in the second quarter compared to net income of $153,904, or $0.16 per share, in the second quarter of 2022. &#160;For the first half of 2023, the net loss was $(1,894,643), or $(1.96) per share, compared to net income of $601,217, or $0.62 per share, for the first half of 2022.</p> <p style='font:10pt Arial;margin:0;text-indent:36pt;color:#000000'>&#160;</p> <p style='font:10pt Arial;margin:0;text-indent:36pt'>Fastener segment revenues were $7,361,113 in the second quarter of 2023 compared to $8,059,612 reported in the second quarter of 2022, a decline of $698,499, or 8.7%. &#160;For the first six months of 2023, fastener segment revenues were $15,217,926 compared to $16,213,445 in the first half of 2022, a decline of $995,519, or 6.1%. The automotive sector is the primary market for our fastener segment products and sales to automotive customers were $4,959,381 in the second quarter this year compared to $4,550,809 in the second quarter of 2022, an increase of $408,572, or 9.0%. &#160;Sales to automotive customers were $9,965,571 for the first six months of 2023 compared to $9,454,992 for the first six months of 2022, an increase of $510,579, or 5.4%. &#160;The increase in the quarterly and year to date sales to automotive customers reflects increased North American light vehicle sales, which have improved as last year&#8217;s supply chain disruptions and parts shortages have eased. &#160;Fastener segment sales to non-automotive customers were $2,401,732 in the second quarter of this year compared to $3,508,803 in the second quarter of 2022, a decline of $1,107,071, or 31.6%. &#160;Sales to non-automotive customers for the first six months of the current year were $5,252,355 compared to $6,758,453 for the first six months of 2022, a decline of $1,506,098, or 22.3%, with the decline primarily related to a single industrial products customer. &#160;Current year operating results have been significantly impacted by higher material and outside processing costs in recent quarters as well as record high inflation. &#160;At the same time, we experienced labor market challenges that resulted in production inefficiencies which led to higher-than-normal quality expenses and expediting costs. &#160;These increases have been difficult to recover from customers, especially automotive customers that often make purchases under restrictive terms and conditions; however, we will continue to review and seek to adjust pricing to address these higher costs. &#160;The overall decline in fastener segment sales combined with higher operating costs have resulted in negative operating margins in the second quarter and year to date. &#160;Second quarter fastener segment gross profit (loss) was $(442,951) compared to $1,191,471 in 2022, a decline of $1,634,422. &#160;On a year-to-date basis, fastener segment gross profit (loss) was $(191,327) compared to $2,750,381 in the first half of 2022, a decline of $2,941,708.</p> <p style='font:10pt Arial;margin:0;text-indent:36pt'>&#160;</p> <p style='font:10pt Arial;margin:0;color:#000000'><kbd style='margin-left:36pt'></kbd>Assembly equipment segment revenues were $689,818 in the second quarter of 2023 compared to $963,786 in the second quarter of 2022, a decline of $273,968, or 28.4%. &#160;For the first half of 2023, assembly equipment segment revenues were $1,562,730 compared to $2,007,649 for the first half of 2022, a decline of $444,919, or 22.2%. &#160;The second quarter and year-to-date decline in revenue was primarily due to fewer machines sold in the current year, as well as lower sales of machine tools. &#160;Lower sales, along with higher operating costs, contributed to a decline in segment gross profit for the quarter and the first half of 2023. &#160;Assembly equipment segment gross profit for the second quarter of 2023 was $113,915 compared to $254,905 in the second quarter of 2022, a decline of $140,990. &#160;For the first half of 2023, segment gross profit was $339,794 compared to $552,218 in 2022, a decline of $212,424.&#160;</p> <p style='font:10pt Arial;margin:0;color:#000000'>&#160;</p> <p style='font:10pt Arial;margin:0'><kbd style='position:absolute;font:10pt Arial;margin-left:0pt'> &#160;&#160;&#160;&#160;</kbd><kbd style='margin-left:36pt'></kbd>Selling and administrative expenses for the second quarter of 2023 were $1,359,465 compared to $1,263,921 in the second quarter of 2022, an increase of $95,544, or 7.6%. &#160;The increase is primarily related to outside consulting and building rent. For the first six months of 2023, selling and administrative expenses were $2,617,160 compared to $2,559,585 in the first half of 2022, an increase of $57,575, or 2.2%. &#160;The net increase in the first half of 2023 primarily relates to the same items as in the second quarter. &#160;The rent increase is the result of the leaseback of the office portion of a building that was sold in the third quarter of 2022. &#160;We have also engaged certain outside consultants to assist in addressing the unprecedented challenges we currently face. &#160;Selling and administrative expenses as a percentage of net sales for the first half of 2023 increased to 15.6%, from 14.0%, in the first half of 2022.&#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'>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 second quarter of 2023 was $22,995, compared to $12,448 in the second quarter of 2022. &#160;Other income for the first six months of 2023 was $66,050, compared to $22,203 in the first six months of 2022. &#160;The increases were primarily due to higher interest rates on invested balances during the current year.</p> <p style='font:10pt Arial;margin:0;text-indent:36pt'>&#160;</p> <p style='font:10pt Arial;margin:0;text-indent:36pt'>&#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 (21.3)% and 21.0% for the second quarter of 2023 and 2022, respectively. &#160;The Company&#8217;s effective tax rates were approximately (21.1)% and 21.4% for the six months ended June 30, 2023 and 2022, respectively.</p> <p style='font:10pt Arial;margin:0;text-indent:36pt'>&#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;text-indent:36pt;color:#000000'>&#160;</p> <p style='font:10pt Arial;margin:0;text-indent:36pt'>Working capital was $17,521,207 as of June 30, 2023 compared to $20,073,089 at the beginning of the year, a decline of $2,551,882. &#160;During the first half of 2023, accounts receivable increased by $929,264, due to the greater sales activity compared to the fourth quarter of 2022, and inventory increased by $302,013 due to higher raw material prices and production costs. &#160;Prepaid income taxes increased by $476,000 due to refunds expected as a result of prior year overpayments and current year operating losses. &#160;Partially offsetting these changes was an increase in accounts payable of $537,088 related to the greater level of operating activity during the second quarter compared to the end of the previous year. &#160;The most significant factor in the working capital decline is the current year operating loss. &#160;Other items reducing working capital in the first half of 2023 were capital expenditures of $760,248, which consisted primarily of equipment used in fastener production activities, and dividends paid of $425,098. &#160;The net result of these changes and other cash flow activity was to leave cash, cash equivalents and certificates of deposit at $3,218,167 as of June 30, 2023 compared to $6,736,101 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.</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'>Results in the second quarter continued to be negatively impacted by numerous factors. &#160;Demand from our automotive customers has been relatively steady as that sector continues to recover from the aftereffects of the Covid-19 pandemic, but our margins have been significantly impacted by higher costs that have been difficult to obtain relief from due to long-term contracts that are common with such customers. &#160;We have also experienced softening demand from non-automotive customers in both the fastener and assembly equipment segments. &#160;The tight labor market has made maintaining an optimal workforce difficult and while inflation has receded from its recent historic high, most of our production-related expenses remain much higher than a year earlier. &#160;These conditions are expected to persist in the near term. &#160;We are reviewing and seeking to adjust our pricing in light of higher operating costs related to the current economic and labor market environment and have made investments in equipment to improve operating efficiency, but such investments may take time to show meaningful improvement in operating results. &#160;We will also continue to adjust our activities based on changing market conditions, while pursuing opportunities to develop new customer relationships and build on existing ones in all the markets we serve.</p> <p style='font:10pt Arial;margin:0'>&#160;</p> <p style='font:10pt Arial;margin:0'>&#160;</p> <p style='font:10pt Courier New;margin:0'><span style='font-family:Times New Roman;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'><span style='font-family:Times New Roman'><i>This discussion contains certain &quot;forward-looking statements&quot; 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 &quot;Risk Factors&quot; in our Annual Report on Form 10-K and in the other filings we make with the United States Securities and Exchange Commission. &#160;These factors, include among other things: risk related to the COVID-19 pandemic and its related adverse effects, conditions in the domestic 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, losses related to product liability, warranty and recall claims, costs relating to environmental laws and regulations, information systems disruptions, the loss of the services of our key employees and difficulties in achieving cost savings. &#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-</i><i>looking statements to reflect events or circumstances after the date hereof or to reflect the occurrence of unanticipated events.</i></span><i> </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> <p style='font:10pt Arial;margin:0'>&#160;</p> <a id='a9'></a><p style='font:10pt Arial;margin:0'>Item 4. Controls and Procedures.</p> <p style='font:10pt Arial;margin:0'>&#160;</p> <p style='font:10pt Arial;margin:0'><kbd style='margin-left:36pt'></kbd>(a) &#160;Disclosure Controls and Procedures. &#160;The Company's management, with the participation of the Company's Chief Executive Officer and President, Chief Operating Officer and Treasurer (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 &quot;Exchange Act&quot;)) as of the end of the period covered by this report. &#160;Based on such evaluation, the Company's Chief Executive Officer and President, Chief Operating Officer and Treasurer have concluded that, as of the end of such period, the Company's disclosure controls and procedures are effective in recording, processing, summarizing and reporting, on a timely basis, information required to be disclosed by the Company in the reports that it files or submits under the Exchange Act.&#160;</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;Internal Control Over Financial Reporting. &#160;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 fiscal quarter to which this report relates 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'>&#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:18pt'>
<td valign='bottom' style='width:51.4pt'><p style='font:10pt Arial;margin:0'>31</p> </td>
<td valign='bottom' style='width:481.4pt'><p style='font:10pt Arial;margin:0'>Rule 13a-14(a) or 15d-14(a) Certifications</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="d440811dex311.htm">Certification Pursuant to Rule 13a-14(a) or 15d-14(a), as Adopted Pursuant to</a></p> <p style='font:10pt Arial;margin:0'><a href="d440811dex311.htm">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="d440811dex312.htm">Certification Pursuant to Rule 13a-14(a) or 15d-14(a), as Adopted Pursuant to</a></p> <p style='font:10pt Arial;margin:0'><a href="d440811dex312.htm">Section 302 of the Sarbanes-Oxley Act of 2002.</a></p> </td></tr>
<tr style='height:21.6pt'>
<td valign='bottom' style='width:51.4pt'><p style='font:10pt Arial;margin:0'>32</p> </td>
<td valign='bottom' style='width:481.4pt'><p style='font:10pt Arial;margin:0'>Section 1350 Certifications</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="d440811dex321.htm">Certification Pursuant to 18 U.S.C. Section 1350, as Adopted Pursuant to</a></p> <p style='font:10pt Arial;margin:0'><a href="d440811dex321.htm">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="d440811dex322.htm">Certification Pursuant to 18 U.S.C. Section 1350, as Adopted Pursuant to</a></p> <p style='font:10pt Arial;margin:0'><a href="d440811dex322.htm">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'><kbd style='margin-left:324pt'></kbd><span style='border-bottom:1px solid #000000'>CHICAGO RIVET &amp; MACHINE CO. &#160;&#160;&#160;&#160;&#160;&#160;&#160;</span>&#160;</p> <p style='font:10pt Arial;margin:0;margin-left:360pt'> &#160;&#160;&#160;&#160;(Registrant)</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'>Date: &#160;August 7, 2023</p> <p style='font:10pt Arial;margin:0;text-indent:36pt;margin-left:288pt'><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 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span></p> <p style='font:10pt Arial;margin:0;text-indent:36pt;margin-left:288pt'>Gregory D. Rizzo</p> <p style='font:10pt Arial;margin:0;margin-left:324pt'>Chief Executive Officer</p> <p style='font:10pt Arial;margin:0;margin-left:144pt'><kbd style='margin-left:180pt'></kbd>(Principal Executive Officer)&#160;</p> <p style='font:10pt Arial;margin:0;text-indent:36pt;margin-left:288pt'>&#160;</p> <p style='font:10pt Arial;margin:0;text-indent:36pt;margin-left:288pt'>&#160;</p> <p style='font:10pt Arial;margin:0'>Date: &#160;August 7, 2023</p> <p style='font:10pt Arial;margin:0;text-indent:36pt;margin-left:288pt'><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;Michael J. Bourg &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span></p> <p style='font:10pt Arial;margin:0;text-indent:36pt;margin-left:288pt'>Michael J. Bourg</p> <p style='font:10pt Arial;margin:0;text-indent:36pt;margin-left:288pt'>President, Chief Operating Officer and Treasurer</p> <p style='font:10pt Arial;margin:0;text-indent:36pt;margin-left:288pt'>(Principal Financial Officer)</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'>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>d440811dex311.htm
<DESCRIPTION>EX-31.1
<TEXT>
<HTML><HEAD>
<TITLE>EX-31.1</TITLE>
</HEAD>
  <BODY> <DIV><P 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> <P style='font:10pt Arial;margin:0;margin-left:54pt'><KBD style='position:absolute;font:10pt Arial;margin-left:-18pt'>Date: August 7,
2023</KBD><KBD style=margin-left:306pt></KBD><FONT style='border-bottom:1px solid #000000'>/s/ Gregory D. Rizzo</FONT><KBD style='display:inline-block;width:60.7pt;border-bottom:1px solid #000000'>&nbsp;</KBD>&nbsp;</P>
<P style='font:10pt Arial;margin:0;margin-left:54pt'><KBD style=margin-left:162pt></KBD>Gregory D. Rizzo&nbsp;</P> <P style='font:10pt Arial;margin:0;margin-left:144pt'><KBD style=margin-left:72pt></KBD>Chief Executive Officer&nbsp;</P>
<P style='font:10pt Arial;margin:0;margin-left:144pt'><KBD style='position:absolute;font:10pt Arial;margin-left:0pt'> &nbsp;</KBD><KBD style=margin-left:72pt></KBD>(Principal Executive Officer)&nbsp;</P>
<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>d440811dex312.htm
<DESCRIPTION>EX-31.2
<TEXT>
<HTML><HEAD>
<TITLE>EX-31.2</TITLE>
</HEAD>
  <BODY> <DIV><P 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, Michael J. Bourg, 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> <P style='font:10pt Arial;margin:0;margin-left:54pt'><KBD style='position:absolute;font:10pt Arial;margin-left:-18pt'>Date: &nbsp;August 7,
2023</KBD><KBD style=margin-left:162pt></KBD><FONT style='border-bottom:1px solid #000000'>/s/ Michael J. Bourg</FONT> &nbsp;</P> <P style='font:10pt Arial;margin:0;margin-left:54pt'><KBD style=margin-left:162pt></KBD>Michael J. Bourg&nbsp;</P>
<P style='font:10pt Arial;margin:0;margin-left:108pt'><KBD style=margin-left:108pt></KBD>President, Chief Operating Officer&nbsp;</P>
<P style='font:10pt Arial;margin:0;margin-left:108pt'><KBD style='position:absolute;font:10pt Arial;margin-left:36pt'> &nbsp;</KBD><KBD style=margin-left:108pt></KBD>and Treasurer (Principal Financial Officer)&nbsp;</P>
<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>d440811dex321.htm
<DESCRIPTION>EX-32.1
<TEXT>
<HTML><HEAD>
<TITLE>EX-32.1</TITLE>
</HEAD>
  <BODY> <DIV><P 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 June 30, 2023 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>August 7, 2023&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>d440811dex322.htm
<DESCRIPTION>EX-32.2
<TEXT>
<HTML><HEAD>
<TITLE>EX-32.2</TITLE>
</HEAD>
  <BODY> <DIV><P 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 June 30, 2023 as filed with the Securities and Exchange Commission on the date hereof (the &quot;Report&quot;), I, Michael J. Bourg, as President, Chief
Operating Officer and Treasurer 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/ Michael
J. Bourg</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>Michael J. Bourg&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>President, Chief Operating Officer&nbsp;</P>
<P style='font:10pt Arial;margin:0'><KBD style=margin-left:36pt></KBD>and Treasurer (Principal Financial 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>August 7, 2023&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-20230630.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 [PPXC1A0KDJ2KVD3L1RLS]. 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/20230630' 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/20230630' 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-20230630_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-20230630_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-20230630_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-20230630_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/20230630/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/20230630/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/20230630/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/20230630/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/20230630/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/20230630/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/20230630/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/20230630/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/20230630/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/20230630/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/20230630/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/20230630/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/20230630/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/20230630/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/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets" id="idr_StatementCondensedConsolidatedBalanceSheets">
				<link:definition>000020 - Statement - Condensed Consolidated Balance Sheets</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/20230630/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/20230630/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/20230630/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/20230630/role/idr_StatementCondensedConsolidatedBalanceSheetsParenthetical" id="idr_StatementCondensedConsolidatedBalanceSheetsParenthetical">
				<link:definition>000030 - Statement - Condensed Consolidated Balance Sheets - 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/20230630/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/20230630/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_FastenerMember' name='FastenerMember'/>
	<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_UnallocatedCorporateMember' name='UnallocatedCorporateMember'/>
	<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_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_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-20230630_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 [PPXC1A0KDJ2KVD3L1RLS]. 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/20230630"
		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/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_StatementCondensedConsolidatedBalanceSheets"/>
	<link:calculationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets">
		<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_CertificatesOfDepositAtCarryingValue' xlink:label='us-gaap_CertificatesOfDepositAtCarryingValue'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_AssetsCurrent' xlink:to='us-gaap_CertificatesOfDepositAtCarryingValue' 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_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='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_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='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_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='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_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_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_DeferredIncomeTaxLiabilitiesNet' xlink:label='us-gaap_DeferredIncomeTaxLiabilitiesNet'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_Liabilities' xlink:to='us-gaap_DeferredIncomeTaxLiabilitiesNet' 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_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/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"/>
	<link:calculationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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_SellingGeneralAndAdministrativeExpense' xlink:label='us-gaap_SellingGeneralAndAdministrativeExpense'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_OperatingIncomeLoss' xlink:to='us-gaap_SellingGeneralAndAdministrativeExpense' 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/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"/>
	<link:calculationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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_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='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_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='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_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='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_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='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_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='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_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='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_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_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-20230630_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 [PPXC1A0KDJ2KVD3L1RLS]. 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/20230630"
		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/20230630/role/idr_DocumentDocumentAndEntityInformation" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DocumentDocumentAndEntityInformation"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_StatementCondensedConsolidatedBalanceSheets"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_StatementCondensedConsolidatedBalanceSheetsParenthetical"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheetsParenthetical"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnauditedParenthetical" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnauditedParenthetical"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnauditedParenthetical"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20230630/role/idr_DisclosureAccountingPolicies" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureAccountingPolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/role/idr_DisclosureAccountingPolicies"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20230630/role/idr_DisclosureRisksAndUncertainties" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureRisksAndUncertainties"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/role/idr_DisclosureRisksAndUncertainties"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20230630/role/idr_DisclosureCommitmentsAndContingencies" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureCommitmentsAndContingencies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/role/idr_DisclosureCommitmentsAndContingencies"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenue" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureRevenue"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenue"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20230630/role/idr_DisclosureIncomeTaxes" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureIncomeTaxes"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/role/idr_DisclosureIncomeTaxes"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20230630/role/idr_DisclosureInventories" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureInventories"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/role/idr_DisclosureInventories"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReporting" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureSegmentReporting"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReporting"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20230630/role/idr_DisclosureAccountingPoliciesPolicies" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureAccountingPoliciesPolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueTables" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureRevenueDisaggregationOfRevenueTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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-20230630.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-20230630.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/20230630/role/idr_DisclosureInventoriesInventoriesTables" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureInventoriesInventoriesTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/role/idr_DisclosureInventoriesInventoriesTables"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentTables" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentTables"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureRevenueDisaggregationOfRevenueDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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-20230630.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-20230630.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-20230630.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-20230630.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/20230630/role/idr_DisclosureInventoriesInventoriesDetails" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureInventoriesInventoriesDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/role/idr_DisclosureInventoriesInventoriesDetails"/>
	<link:roleRef roleURI="http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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-20230630.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-20230630.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='cvr-20230630.xsd#fil_UnallocatedCorporateMember' xlink:label='fil_UnallocatedCorporateMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_SegmentDomain' xlink:to='fil_UnallocatedCorporateMember' 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-20230630.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-20230630.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-20230630_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 [PPXC1A0KDJ2KVD3L1RLS]. 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/20230630"
		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-20230630.xsd#fil_UnallocatedCorporateMember' xlink:label='fil_UnallocatedCorporateMember'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_UnallocatedCorporateMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Unallocated Corporate</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_UnallocatedCorporateMember' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the Unallocated Corporate, 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_UnallocatedCorporateMember' xlink:to='lab_fil_UnallocatedCorporateMember'/>
		<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/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_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_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_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_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_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'>Provision (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_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_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.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_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='cvr-20230630.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='cvr-20230630.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/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_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_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_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_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='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_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_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_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_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_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_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.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_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.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='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/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_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_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.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_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_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/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_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_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_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_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.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='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_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='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_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_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_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_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_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_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='cvr-20230630.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_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_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_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_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'>Income (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'>Income (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_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 profit (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 profit (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.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.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_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_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_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_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_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_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_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_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_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_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 {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_DeferredIncomeTaxExpenseBenefit' xlink:role='http://www.xbrl.org/2003/role/terseLabel' 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_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_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_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_DeferredIncomeTaxLiabilitiesNet' xlink:label='us-gaap_DeferredIncomeTaxLiabilitiesNet'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_DeferredIncomeTaxLiabilitiesNet' 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_DeferredIncomeTaxLiabilitiesNet' xlink:to='lab_us-gaap_DeferredIncomeTaxLiabilitiesNet'/>
		<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 $146,000 and $160,000, respectively</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 $146,000 and $160,000, respectively</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.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_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_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_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_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.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/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_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_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_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_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'>Prepaid 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_PrepaidTaxes' xlink:to='lab_us-gaap_PrepaidTaxes'/>
		<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.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_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_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_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/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_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_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_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 income (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_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.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='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_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_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_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 certificates of deposit</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_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_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_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 income (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_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_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_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.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.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_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_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_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 income (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_SellingGeneralAndAdministrativeExpense' xlink:label='us-gaap_SellingGeneralAndAdministrativeExpense'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_SellingGeneralAndAdministrativeExpense' 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_SellingGeneralAndAdministrativeExpense' xlink:to='lab_us-gaap_SellingGeneralAndAdministrativeExpense'/>
		<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_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.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.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</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 - 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_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_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_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.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_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='cvr-20230630.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_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_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_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_AllowanceForDoubtfulAccountsReceivableCurrent' xlink:label='us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accounts Receivable, Allowance for Credit Loss, Current</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent' xlink:to='lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent'/>
		<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_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.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='cvr-20230630.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/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_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_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_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_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.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='cvr-20230630.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_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_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/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_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.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.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='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_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='cvr-20230630.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-20230630.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/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_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_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_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_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_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.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_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.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.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.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_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_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_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 (used in) 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 (used in) 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_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_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_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_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 Income (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 Income (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_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_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_CertificatesOfDepositAtCarryingValue' xlink:label='us-gaap_CertificatesOfDepositAtCarryingValue'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CertificatesOfDepositAtCarryingValue' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Certificates of deposit</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CertificatesOfDepositAtCarryingValue' xlink:to='lab_us-gaap_CertificatesOfDepositAtCarryingValue'/>
		<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.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-20230630_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 [PPXC1A0KDJ2KVD3L1RLS]. 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/20230630"
		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/20230630/role/idr_DocumentDocumentAndEntityInformation" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DocumentDocumentAndEntityInformation"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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_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='4.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='5.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='6.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='7.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='8.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='9.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='10.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='11.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='12.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='13.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='14.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='15.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='16.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='17.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='18.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='19.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='20.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='21.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='22.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='23.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='24.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='25.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='26.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='27.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='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/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_StatementCondensedConsolidatedBalanceSheets"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets">
		<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_CertificatesOfDepositAtCarryingValue' xlink:label='us-gaap_CertificatesOfDepositAtCarryingValue'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AssetsCurrentAbstract' xlink:to='us-gaap_CertificatesOfDepositAtCarryingValue' 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_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='4.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='5.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='6.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='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_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_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='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_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_DeferredIncomeTaxLiabilitiesNet' xlink:label='us-gaap_DeferredIncomeTaxLiabilitiesNet'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_LiabilitiesAndStockholdersEquityAbstract' xlink:to='us-gaap_DeferredIncomeTaxLiabilitiesNet' 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_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='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_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='4.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='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_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/20230630/role/idr_StatementCondensedConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_StatementCondensedConsolidatedBalanceSheetsParenthetical"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheetsParenthetical">
		<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_AllowanceForDoubtfulAccountsReceivableCurrent' xlink:label='us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementOfFinancialPositionAbstract' xlink:to='us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent' 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_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='2.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='3.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='4.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='5.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='6.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='7.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='8.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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_SellingGeneralAndAdministrativeExpense' xlink:label='us-gaap_SellingGeneralAndAdministrativeExpense'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_IncomeStatementAbstract' xlink:to='us-gaap_SellingGeneralAndAdministrativeExpense' 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/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnauditedParenthetical" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnauditedParenthetical"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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' 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_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_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='2.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='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_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='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_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='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_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='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_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='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_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_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='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_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/20230630/role/idr_DisclosureAccountingPolicies" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureAccountingPolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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/20230630/role/idr_DisclosureRisksAndUncertainties" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureRisksAndUncertainties"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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/20230630/role/idr_DisclosureCommitmentsAndContingencies" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureCommitmentsAndContingencies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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/20230630/role/idr_DisclosureRevenue" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureRevenue"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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/20230630/role/idr_DisclosureIncomeTaxes" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureIncomeTaxes"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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/20230630/role/idr_DisclosureInventories" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureInventories"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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/20230630/role/idr_DisclosureSegmentReporting" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureSegmentReporting"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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/20230630/role/idr_DisclosureAccountingPoliciesPolicies" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureAccountingPoliciesPolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueTables" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureRevenueDisaggregationOfRevenueTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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-20230630.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-20230630.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/20230630/role/idr_DisclosureInventoriesInventoriesTables" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureInventoriesInventoriesTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentTables" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureRevenueDisaggregationOfRevenueDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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-20230630.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-20230630.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-20230630.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-20230630.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/20230630/role/idr_DisclosureInventoriesInventoriesDetails" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureInventoriesInventoriesDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails" xlink:type="simple" xlink:href="cvr-20230630.xsd#idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.chicagorivet.com/20230630/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-20230630.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-20230630.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='cvr-20230630.xsd#fil_UnallocatedCorporateMember' xlink:label='fil_UnallocatedCorporateMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementBusinessSegmentsAxis' xlink:to='fil_UnallocatedCorporateMember' 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-20230630.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-20230630.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>11
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551497236512">
<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">6 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Aug. 07, 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_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_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_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Jun. 30,  2023<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_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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">CHICAGO RIVET & MACHINE CO<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_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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">36-0904920<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_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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Naperville<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_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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">60563<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_CityAreaCode', window );">City Area Code</a></td>
<td class="text">630<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_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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock, par value $1.00 per share<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_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">CVR<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_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NYSEAMER<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_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="re">
<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="ro">
<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="re">
<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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
<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_EntityShellCompany', window );">Entity Shell 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_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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
<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_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2023<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_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">Q2<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>12
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551495649328">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets - USD ($)<br></strong></div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</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,524,167<span></span>
</td>
<td class="nump">$ 4,045,101<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_CertificatesOfDepositAtCarryingValue', window );">Certificates of deposit</a></td>
<td class="nump">1,694,000<span></span>
</td>
<td class="nump">2,691,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_AccountsReceivableNetCurrent', window );">Accounts receivable - Less allowances of $146,000 and $160,000, respectively</a></td>
<td class="nump">5,904,401<span></span>
</td>
<td class="nump">4,975,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_InventoryNet', window );">Inventories, net</a></td>
<td class="nump">9,423,243<span></span>
</td>
<td class="nump">9,121,230<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_PrepaidTaxes', window );">Prepaid income taxes</a></td>
<td class="nump">985,119<span></span>
</td>
<td class="nump">509,119<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_OtherAssetsCurrent', window );">Other current assets</a></td>
<td class="nump">421,999<span></span>
</td>
<td class="nump">422,747<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_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">19,952,929<span></span>
</td>
<td class="nump">21,764,334<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_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="ro">
<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="re">
<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,758,266<span></span>
</td>
<td class="nump">6,758,266<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_MachineryAndEquipmentGross', window );">Production equipment and other</a></td>
<td class="nump">37,778,206<span></span>
</td>
<td class="nump">37,080,762<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_PropertyPlantAndEquipmentGross', window );">Property, Plant and Equipment, Gross</a></td>
<td class="nump">46,046,985<span></span>
</td>
<td class="nump">45,349,541<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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Less accumulated depreciation</a></td>
<td class="nump">34,037,051<span></span>
</td>
<td class="nump">33,487,748<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_PropertyPlantAndEquipmentNet', window );">Net property, plant and equipment</a></td>
<td class="nump">12,009,934<span></span>
</td>
<td class="nump">11,861,793<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">31,962,863<span></span>
</td>
<td class="nump">33,626,127<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,234,323<span></span>
</td>
<td class="nump">697,235<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">577,657<span></span>
</td>
<td class="nump">462,332<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">84,244<span></span>
</td>
<td class="nump">327,961<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">535,498<span></span>
</td>
<td class="nump">203,717<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,431,722<span></span>
</td>
<td class="nump">1,691,245<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_DeferredIncomeTaxLiabilitiesNet', window );">Deferred income taxes</a></td>
<td class="nump">864,084<span></span>
</td>
<td class="nump">948,084<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_Liabilities', window );">Total liabilities</a></td>
<td class="nump">3,295,806<span></span>
</td>
<td class="nump">2,639,329<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_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="ro">
<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="re">
<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="ro">
<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="re">
<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">31,003,925<span></span>
</td>
<td class="nump">33,323,666<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_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="reu">
<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">28,667,057<span></span>
</td>
<td class="nump">30,986,798<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_LiabilitiesAndStockholdersEquity', window );">Total liabilities and shareholders' equity</a></td>
<td class="nump">$ 31,962,863<span></span>
</td>
<td class="nump">$ 33,626,127<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_CertificatesOfDepositAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 savings certificate entitling the Entity (that is, bearer) to receive interest at an established maturity date, based upon a fixed interest rate. A certificate of deposit may be issued in any denomination. Certificates of deposit are generally issued by commercial banks and, therefore, insured by the FDIC (up to the prescribed limit). Certificates of deposit generally restrict holders from withdrawing funds on demand without the incurrence of penalties. Generally, only certificates of deposit with original maturities of three months or less qualify as cash equivalents. Original maturity means original maturity to the entity holding the investment. As a related example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three-years ago does not become a cash equivalent when its remaining maturity is three months.</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(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_CertificatesOfDepositAtCarryingValue</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_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_DeferredIncomeTaxLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 deferred tax asset, of deferred tax liability attributable to taxable differences 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 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(15)(b)(2))<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 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 3: 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_DeferredIncomeTaxLiabilitiesNet</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_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_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>13
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551497111392">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets - Parenthetical - USD ($)<br></strong></div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</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</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_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Accounts Receivable, Allowance for Credit Loss, Current</a></td>
<td class="nump">$ 146,000<span></span>
</td>
<td class="nump">$ 160,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_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="ro">
<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="re">
<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="ro">
<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.00<span></span>
</td>
<td class="nump">$ 1.00<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_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="ro">
<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="re">
<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_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 allowance for credit loss on accounts receivable, 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 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<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/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479344/326-20-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481962/310-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_AllowanceForDoubtfulAccountsReceivableCurrent</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_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>14
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551492768816">
<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>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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>
<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">$ 8,050,931<span></span>
</td>
<td class="nump">$ 9,023,398<span></span>
</td>
<td class="nump">$ 16,780,656<span></span>
</td>
<td class="nump">$ 18,221,094<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">8,379,967<span></span>
</td>
<td class="nump">7,577,021<span></span>
</td>
<td class="nump">16,632,189<span></span>
</td>
<td class="nump">14,918,495<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="num">(329,036)<span></span>
</td>
<td class="nump">1,446,377<span></span>
</td>
<td class="nump">148,467<span></span>
</td>
<td class="nump">3,302,599<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_SellingGeneralAndAdministrativeExpense', window );">Selling and administrative expenses</a></td>
<td class="nump">1,359,465<span></span>
</td>
<td class="nump">1,263,921<span></span>
</td>
<td class="nump">2,617,160<span></span>
</td>
<td class="nump">2,559,585<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 profit (loss)</a></td>
<td class="num">(1,688,501)<span></span>
</td>
<td class="nump">182,456<span></span>
</td>
<td class="num">(2,468,693)<span></span>
</td>
<td class="nump">743,014<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">22,995<span></span>
</td>
<td class="nump">12,448<span></span>
</td>
<td class="nump">66,050<span></span>
</td>
<td class="nump">22,203<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 );">Income (loss) before income taxes</a></td>
<td class="num">(1,665,506)<span></span>
</td>
<td class="nump">194,904<span></span>
</td>
<td class="num">(2,402,643)<span></span>
</td>
<td class="nump">765,217<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 );">Provision (benefit) for income taxes</a></td>
<td class="num">(354,000)<span></span>
</td>
<td class="nump">41,000<span></span>
</td>
<td class="num">(508,000)<span></span>
</td>
<td class="nump">164,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 Income (loss)</a></td>
<td class="num">$ (1,311,506)<span></span>
</td>
<td class="nump">$ 153,904<span></span>
</td>
<td class="num">$ (1,894,643)<span></span>
</td>
<td class="nump">$ 601,217<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>
<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 income (loss) per share</a></td>
<td class="num">$ (1.36)<span></span>
</td>
<td class="nump">$ 0.16<span></span>
</td>
<td class="num">$ (1.96)<span></span>
</td>
<td class="nump">$ 0.62<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 income (loss) per share</a></td>
<td class="num">$ (1.36)<span></span>
</td>
<td class="nump">$ 0.16<span></span>
</td>
<td class="num">$ (1.96)<span></span>
</td>
<td class="nump">$ 0.62<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>
<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>
<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.22<span></span>
</td>
<td class="nump">$ 0.22<span></span>
</td>
<td class="nump">$ 0.44<span></span>
</td>
<td class="nump">$ 0.44<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_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_SellingGeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.</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.4)<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_SellingGeneralAndAdministrativeExpense</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_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>15
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551495804208">
<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, 2021</a></td>
<td class="nump">$ 28,969,365<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">$ 31,306,233<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, 2021</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, 2021</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 Income (loss)</a></td>
<td class="nump">447,313<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">447,313<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, 2022</a></td>
<td class="nump">29,204,129<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">31,540,997<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, 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 Mar. 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="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, 2021</a></td>
<td class="nump">28,969,365<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">31,306,233<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, 2021</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, 2021</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 Income (loss)</a></td>
<td class="nump">601,217<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="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 Jun. 30, 2022</a></td>
<td class="nump">29,145,484<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">31,482,352<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 Jun. 30, 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 Jun. 30, 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="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 Mar. 31, 2022</a></td>
<td class="nump">29,204,129<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">31,540,997<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, 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 Mar. 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="re">
<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 Income (loss)</a></td>
<td class="nump">153,904<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">153,904<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_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 Jun. 30, 2022</a></td>
<td class="nump">29,145,484<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">31,482,352<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 Jun. 30, 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 Jun. 30, 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="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="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, 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="re">
<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 Income (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="ro">
<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, 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="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, 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="re">
<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 Income (loss)</a></td>
<td class="num">$ (1,894,643)<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="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 Jun. 30, 2023</a></td>
<td class="nump">$ 28,667,057<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">31,003,925<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 Jun. 30, 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 Jun. 30, 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 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="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 Income (loss)</a></td>
<td class="num">(1,311,506)<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">(1,311,506)<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 Jun. 30, 2023</a></td>
<td class="nump">$ 28,667,057<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">$ 31,003,925<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 Jun. 30, 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 Jun. 30, 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>
</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>16
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551495586544">
<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="4">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Mar. 31, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
<th class="th"><div>Mar. 31, 2022</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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>
<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>
</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.22<span></span>
</td>
<td class="nump">$ 0.22<span></span>
</td>
<td class="nump">$ 0.22<span></span>
</td>
<td class="nump">$ 0.22<span></span>
</td>
<td class="nump">$ 0.44<span></span>
</td>
<td class="nump">$ 0.44<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>17
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551496307584">
<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">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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 Income (loss)</a></td>
<td class="num">$ (1,894,643)<span></span>
</td>
<td class="nump">$ 601,217<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 income (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">612,107<span></span>
</td>
<td class="nump">640,848<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">(31,500)<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">(84,000)<span></span>
</td>
<td class="num">(46,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">(929,264)<span></span>
</td>
<td class="num">(1,194,243)<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_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="num">(302,013)<span></span>
</td>
<td class="num">(1,095,593)<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_IncreaseDecreaseInOtherOperatingAssets', window );">Other current assets</a></td>
<td class="num">(475,252)<span></span>
</td>
<td class="num">(78,145)<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_IncreaseDecreaseInAccountsPayable', window );">Accounts payable</a></td>
<td class="nump">537,088<span></span>
</td>
<td class="nump">382,910<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_IncreaseDecreaseInEmployeeRelatedLiabilities', window );">Accrued wages and salaries</a></td>
<td class="nump">115,325<span></span>
</td>
<td class="nump">235,473<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_IncreaseDecreaseInOtherAccruedLiabilities', window );">Other accrued expenses</a></td>
<td class="num">(243,717)<span></span>
</td>
<td class="nump">91,825<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_IncreaseDecreaseInCustomerAdvancesAndDeposits', window );">Unearned revenue and customer deposits</a></td>
<td class="nump">331,781<span></span>
</td>
<td class="num">(75,713)<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_NetCashProvidedByUsedInOperatingActivities', window );">Net cash used in operating activities</a></td>
<td class="num">(2,364,088)<span></span>
</td>
<td class="num">(537,421)<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_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="re">
<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">(760,248)<span></span>
</td>
<td class="num">(211,703)<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_ProceedsFromSaleOfPropertyPlantAndEquipment', window );">Proceeds from the sale of equipment</a></td>
<td class="nump">31,500<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_ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities', window );">Proceeds from certificates of deposit</a></td>
<td class="nump">997,000<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 (used in) investing activities</a></td>
<td class="nump">268,252<span></span>
</td>
<td class="num">(211,703)<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">(425,098)<span></span>
</td>
<td class="num">(425,098)<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">(425,098)<span></span>
</td>
<td class="num">(425,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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect', window );">Net decrease in cash and cash equivalents</a></td>
<td class="num">(2,520,934)<span></span>
</td>
<td class="num">(1,174,222)<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">4,045,101<span></span>
</td>
<td class="nump">2,036,954<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,524,167<span></span>
</td>
<td class="nump">$ 862,732<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_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_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>18
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551500777440">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounting Policies<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 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_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 June 30, 2023 (unaudited) and December 31, 2022 (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, 2022.</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 six month period ended June 30, 2023 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 June 2016, the FASB issued ASU No. 2016-13, Financial Instruments&#160;- Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments and in November 2018 issued an amendment, ASU 2018-19, Codification Improvements to Topic 326, Financial Instruments &#8211;&#160;Credit Losses. &#160;ASU 2016-13 amends the impairment model by requiring entities to use a forward-looking approach based on expected losses rather than incurred losses to estimate credit losses on certain types of financial instruments, including trade receivables. This may result in the earlier recognition of allowances for losses. ASU 2016-13 and ASU 2018-19 should be applied on either a prospective transition or modified-retrospective approach depending on the subtopic. &#160;ASU 2016-13 is effective for annual periods beginning after December 15, 2022, including interim periods within those fiscal years, with early adoption permitted. The Company adopted this ASU on January 1, 2023, using the modified retrospective approach. The adoption did not result in the recognition of a cumulative adjustment to beginning retained earnings, nor did it have a material impact on the condensed consolidated financial statements.</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>19
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551497162800">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 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_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 in part 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>20
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551500718720">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 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_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.</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>21
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551499240064">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 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_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 manufacturing 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 second quarter of 2023, the Company did not realize any revenue related to such contracts and $379,000 is the remaining performance obligation under such contracts.</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 income. &#160;These adjustments primarily relate to customer returns and allowances. &#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 June 30, 2023 and December 31, 2022 reserves for warranty claims were not material. &#160;Cash received by the Company prior to shipment 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 income.</p> <p style="font:10pt Arial;margin:0;color:#000000">&#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">&#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 June 30, 2023:</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,959,381</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;38,223</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,997,604</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,401,732</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">651,595</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,053,327</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;7,361,113</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;&#160;&#160;689,818</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;8,050,931</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 June 30, 2022:</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;4,550,809</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;59,818</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;4,610,627</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">3,508,803</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">903,968</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">4,412,771</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;8,059,612</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;&#160;963,786</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;9,023,398</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>
<tr>
<td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Six Months Ended June 30, 2023:</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;9,965,571</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;83,101</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;10,048,672</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">5,252,355</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,479,629</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">6,731,984</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;15,217,926</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;1,562,730</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;16,780,656</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">Six Months Ended June 30, 2022:</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;9,454,992</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;101,652</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;9,556,644</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">6,758,453</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,905,997</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">8,664,450</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;16,213,445</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;2,007,649</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;18,221,094</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 June 30, 2023:</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;6,137,476</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;654,546</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,792,022</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,223,637</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">35,272</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,258,909</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;7,361,113</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;689,818</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;8,050,931</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 June 30, 2022:</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,796,779</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;932,468</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,729,247</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,262,833</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">31,318</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,294,151</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;8,059,612</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;963,786</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;9,023,398</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>
<tr>
<td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Six Months Ended June 30, 2023</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;12,529,223</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;1,441,117</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;13,970,340</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">2,688,703</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">121,613</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">2,810,316</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;15,217,926</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;1,562,730</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;16,780,656</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">Six Months Ended June 30, 2022</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;13,556,908</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;1,936,618</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;15,493,526</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">2,656,537</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">71,031</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">2,727,568</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;16,213,445</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;2,007,649</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;18,221,094</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>22
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551497119696">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 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_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 (21.3)% and 21.0% for the second quarter of 2023 and 2022, respectively, and (21.1)% and 21.4% for the six months ended June 30, 2023 and 2022, 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 2019 through 2022 tax years are subject to examination by the Internal Revenue Service (&#8220;IRS&#8221;). &#160;&#160;While it may be possible that a reduction could occur with respect to the Company&#8217;s unrecognized tax benefits as an outcome of an IRS examination, 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 have been extended on any of the Company&#8217;s federal income tax filings. The statute of limitations on the Company&#8217;s 2019 through 2022 federal income tax returns will expire on September 15, 2023 through 2026, 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 2019 through 2022 tax years remain subject to examination by various state authorities with the latest closing period on October 31, 2026. &#160;The Company is not currently under examination by any state authority for income tax purposes and no statutes 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>23
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551499406976">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 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_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 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">June 30, 2023</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, 2022</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;4,466,826&#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;4,460,071&#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,939,353&#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,747,427&#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,638,064&#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,534,732&#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">10,044,243&#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">9,742,230&#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">(621,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">(621,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;9,423,243&#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;9,121,230&#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>24
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551500715952">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Reporting<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 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_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 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">Other</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 June 30, 2023:</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;7,361,113&#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;689,818&#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;8,050,931&#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">272,679&#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">30,732&#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">2,664&#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">306,075&#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</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(1,093,218)&#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">87,166&#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">(1,006,052)&#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">(681,199)&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(681,199)&#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">21,745&#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">21,745&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Income 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;(1,665,506)&#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">406,629&#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">(59,800)&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">346,829&#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">5,543,477&#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">360,924&#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,904,401&#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">7,940,159&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">1,483,084&#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">9,423,243&#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,759,709&#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,242,033&#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,008,192&#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">12,009,934&#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,625,285&#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,625,285&#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;31,962,863&#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 June 30, 2022:</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;8,059,612&#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;963,786&#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;9,023,398&#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">281,841&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">33,363&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">5,220&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">320,424&#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</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">499,531&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">191,011&#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">690,542&#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">(497,736)&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(497,736)&#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">2,098&#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">2,098&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Income 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;194,904&#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">22,682&#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">68,427&#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">91,109&#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">6,330,240&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">511,987&#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,842,227&#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,341,612&#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,273,761&#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,615,373&#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,396,988&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">1,367,179&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">1,260,552&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">12,044,719&#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">4,028,553&#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">4,028,553&#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;32,530,872&#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">Six Months Ended June 30, 2023:</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;15,217,926&#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;1,562,730&#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;16,780,656&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" 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>
<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">545,315&#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">61,464&#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,328&#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">612,107&#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</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(1,521,719)&#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">276,481&#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">(1,245,238)&#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">(1,219,736)&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(1,219,736)&#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">62,331&#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">62,331&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Income 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;(2,402,643)&#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">742,695&#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">17,553&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">760,248&#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">&#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">Six Months Ended June 30, 2022:</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;16,213,445&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;2,007,649&#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;18,221,094&#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">563,682&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">66,726&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">10,440&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">640,848&#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</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">1,335,038&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">423,390&#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">1,758,428&#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">(997,064)&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(997,064)&#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">3,853&#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">3,853&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Income 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;&#160;&#160;765,217&#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">178,346&#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">33,357&#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">211,703&#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> </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>25
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551497307184">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 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_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 June 30, 2023 (unaudited) and December 31, 2022 (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, 2022.</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 six month period ended June 30, 2023 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 June 2016, the FASB issued ASU No. 2016-13, Financial Instruments&#160;- Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments and in November 2018 issued an amendment, ASU 2018-19, Codification Improvements to Topic 326, Financial Instruments &#8211;&#160;Credit Losses. &#160;ASU 2016-13 amends the impairment model by requiring entities to use a forward-looking approach based on expected losses rather than incurred losses to estimate credit losses on certain types of financial instruments, including trade receivables. This may result in the earlier recognition of allowances for losses. ASU 2016-13 and ASU 2018-19 should be applied on either a prospective transition or modified-retrospective approach depending on the subtopic. &#160;ASU 2016-13 is effective for annual periods beginning after December 15, 2022, including interim periods within those fiscal years, with early adoption permitted. The Company adopted this ASU on January 1, 2023, using the modified retrospective approach. The adoption did not result in the recognition of a cumulative adjustment to beginning retained earnings, nor did it have a material impact on the condensed consolidated financial statements.</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 in part 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.</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 manufacturing 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 second quarter of 2023, the Company did not realize any revenue related to such contracts and $379,000 is the remaining performance obligation under such contracts.</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 income. &#160;These adjustments primarily relate to customer returns and allowances. &#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 June 30, 2023 and December 31, 2022 reserves for warranty claims were not material. &#160;Cash received by the Company prior to shipment 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 income.</p> <p style="font:10pt Arial;margin:0;color:#000000">&#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 (21.3)% and 21.0% for the second quarter of 2023 and 2022, respectively, and (21.1)% and 21.4% for the six months ended June 30, 2023 and 2022, 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 2019 through 2022 tax years are subject to examination by the Internal Revenue Service (&#8220;IRS&#8221;). &#160;&#160;While it may be possible that a reduction could occur with respect to the Company&#8217;s unrecognized tax benefits as an outcome of an IRS examination, 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 have been extended on any of the Company&#8217;s federal income tax filings. The statute of limitations on the Company&#8217;s 2019 through 2022 federal income tax returns will expire on September 15, 2023 through 2026, 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 2019 through 2022 tax years remain subject to examination by various state authorities with the latest closing period on October 31, 2026. &#160;The Company is not currently under examination by any state authority for income tax purposes and no statutes 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>26
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551497233920">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2023</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 June 30, 2023:</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;6,137,476</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;654,546</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,792,022</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,223,637</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">35,272</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,258,909</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;7,361,113</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;689,818</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;8,050,931</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 June 30, 2022:</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,796,779</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;932,468</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,729,247</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,262,833</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">31,318</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,294,151</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;8,059,612</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;963,786</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;9,023,398</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>
<tr>
<td style="width:157.5pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Six Months Ended June 30, 2023</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;12,529,223</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;1,441,117</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;13,970,340</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">2,688,703</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">121,613</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">2,810,316</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;15,217,926</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;1,562,730</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;16,780,656</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">Six Months Ended June 30, 2022</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;13,556,908</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;1,936,618</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;15,493,526</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">2,656,537</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">71,031</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">2,727,568</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;16,213,445</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;2,007,649</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;18,221,094</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 June 30, 2023:</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,959,381</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;38,223</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,997,604</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,401,732</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">651,595</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,053,327</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;7,361,113</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;&#160;&#160;689,818</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;8,050,931</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 June 30, 2022:</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;4,550,809</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;59,818</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;4,610,627</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">3,508,803</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">903,968</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">4,412,771</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;8,059,612</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;&#160;963,786</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;9,023,398</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>
<tr>
<td style="width:162pt;padding-left:2pt;padding-right:2pt" valign="bottom"><p style="font:9pt Arial;margin:0;color:#000000">Six Months Ended June 30, 2023:</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;9,965,571</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;83,101</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;10,048,672</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">5,252,355</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,479,629</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">6,731,984</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;15,217,926</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;1,562,730</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;16,780,656</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">Six Months Ended June 30, 2022:</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;9,454,992</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;101,652</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;9,556,644</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">6,758,453</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,905,997</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">8,664,450</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;16,213,445</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;2,007,649</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;18,221,094</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>27
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551499240064">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 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_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">June 30, 2023</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, 2022</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;4,466,826&#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;4,460,071&#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,939,353&#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,747,427&#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,638,064&#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,534,732&#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">10,044,243&#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">9,742,230&#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">(621,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">(621,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;9,423,243&#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;9,121,230&#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>28
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551500715952">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 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_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">Other</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 June 30, 2023:</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;7,361,113&#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;689,818&#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;8,050,931&#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">272,679&#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">30,732&#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">2,664&#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">306,075&#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</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(1,093,218)&#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">87,166&#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">(1,006,052)&#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">(681,199)&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(681,199)&#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">21,745&#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">21,745&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Income 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;(1,665,506)&#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">406,629&#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">(59,800)&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">346,829&#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">5,543,477&#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">360,924&#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,904,401&#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">7,940,159&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">1,483,084&#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">9,423,243&#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,759,709&#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,242,033&#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,008,192&#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">12,009,934&#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,625,285&#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,625,285&#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;31,962,863&#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 June 30, 2022:</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;8,059,612&#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;963,786&#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;9,023,398&#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">281,841&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">33,363&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">5,220&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">320,424&#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</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">499,531&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">191,011&#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">690,542&#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">(497,736)&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(497,736)&#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">2,098&#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">2,098&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Income 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;194,904&#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">22,682&#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">68,427&#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">91,109&#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">6,330,240&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">511,987&#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,842,227&#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,341,612&#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,273,761&#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,615,373&#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,396,988&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">1,367,179&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">1,260,552&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">12,044,719&#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">4,028,553&#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">4,028,553&#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;32,530,872&#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">Six Months Ended June 30, 2023:</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;15,217,926&#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;1,562,730&#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;16,780,656&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" 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>
<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">545,315&#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">61,464&#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,328&#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">612,107&#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</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(1,521,719)&#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">276,481&#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">(1,245,238)&#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">(1,219,736)&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(1,219,736)&#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">62,331&#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">62,331&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Income 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;(2,402,643)&#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">742,695&#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">17,553&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">760,248&#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">&#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">Six Months Ended June 30, 2022:</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;16,213,445&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">$ &#160;&#160;2,007,649&#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;18,221,094&#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">563,682&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">66,726&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">10,440&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">640,848&#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</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">1,335,038&#160;&#160;&#160;</p> </td>
<td style="width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">423,390&#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">1,758,428&#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">(997,064)&#160;&#160;</p> </td>
<td style="background-color:#CEE7FF;width:75.6pt" valign="bottom"><p style="font:8pt Arial;margin:0;text-align:right">(997,064)&#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">3,853&#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">3,853&#160;&#160;&#160;</p> </td></tr>
<tr>
<td style="background-color:#CEE7FF;width:190.95pt" valign="bottom"><p style="font:8pt Arial;margin:0">Income 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;&#160;&#160;765,217&#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">178,346&#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">33,357&#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">211,703&#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> </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>29
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551490311056">
<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>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</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">$ 8,050,931<span></span>
</td>
<td class="nump">$ 9,023,398<span></span>
</td>
<td class="nump">$ 16,780,656<span></span>
</td>
<td class="nump">$ 18,221,094<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>
<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,792,022<span></span>
</td>
<td class="nump">7,729,247<span></span>
</td>
<td class="nump">13,970,340<span></span>
</td>
<td class="nump">15,493,526<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>
<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,258,909<span></span>
</td>
<td class="nump">1,294,151<span></span>
</td>
<td class="nump">2,810,316<span></span>
</td>
<td class="nump">2,727,568<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>
<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,997,604<span></span>
</td>
<td class="nump">4,610,627<span></span>
</td>
<td class="nump">10,048,672<span></span>
</td>
<td class="nump">9,556,644<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>
<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,053,327<span></span>
</td>
<td class="nump">4,412,771<span></span>
</td>
<td class="nump">6,731,984<span></span>
</td>
<td class="nump">8,664,450<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>
<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">7,361,113<span></span>
</td>
<td class="nump">8,059,612<span></span>
</td>
<td class="nump">15,217,926<span></span>
</td>
<td class="nump">16,213,445<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>
<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,137,476<span></span>
</td>
<td class="nump">6,796,779<span></span>
</td>
<td class="nump">12,529,223<span></span>
</td>
<td class="nump">13,556,908<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>
<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,223,637<span></span>
</td>
<td class="nump">1,262,833<span></span>
</td>
<td class="nump">2,688,703<span></span>
</td>
<td class="nump">2,656,537<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>
<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,959,381<span></span>
</td>
<td class="nump">4,550,809<span></span>
</td>
<td class="nump">9,965,571<span></span>
</td>
<td class="nump">9,454,992<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>
<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,401,732<span></span>
</td>
<td class="nump">3,508,803<span></span>
</td>
<td class="nump">5,252,355<span></span>
</td>
<td class="nump">6,758,453<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>
<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">689,818<span></span>
</td>
<td class="nump">963,786<span></span>
</td>
<td class="nump">1,562,730<span></span>
</td>
<td class="nump">2,007,649<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>
<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">654,546<span></span>
</td>
<td class="nump">932,468<span></span>
</td>
<td class="nump">1,441,117<span></span>
</td>
<td class="nump">1,936,618<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>
<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">35,272<span></span>
</td>
<td class="nump">31,318<span></span>
</td>
<td class="nump">121,613<span></span>
</td>
<td class="nump">71,031<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>
<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">38,223<span></span>
</td>
<td class="nump">59,818<span></span>
</td>
<td class="nump">83,101<span></span>
</td>
<td class="nump">101,652<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>
<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">$ 651,595<span></span>
</td>
<td class="nump">$ 903,968<span></span>
</td>
<td class="nump">$ 1,479,629<span></span>
</td>
<td class="nump">$ 1,905,997<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>30
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551495567744">
<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>Jun. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</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">$ 4,466,826<span></span>
</td>
<td class="nump">$ 4,460,071<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,939,353<span></span>
</td>
<td class="nump">2,747,427<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,638,064<span></span>
</td>
<td class="nump">2,534,732<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">10,044,243<span></span>
</td>
<td class="nump">9,742,230<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">(621,000)<span></span>
</td>
<td class="num">(621,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">$ 9,423,243<span></span>
</td>
<td class="nump">$ 9,121,230<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>31
<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.23.2</span><table class="report" border="0" cellspacing="2" id="idm140551497338240">
<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="2">6 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
<th class="th"><div>Dec. 31, 2022</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">$ 8,050,931<span></span>
</td>
<td class="nump">$ 9,023,398<span></span>
</td>
<td class="nump">$ 16,780,656<span></span>
</td>
<td class="nump">$ 18,221,094<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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">612,107<span></span>
</td>
<td class="nump">640,848<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 $146,000 and $160,000, respectively</a></td>
<td class="nump">5,904,401<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,904,401<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,975,137<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">9,423,243<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,423,243<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,121,230<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">12,009,934<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12,009,934<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 11,861,793<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>
<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">7,361,113<span></span>
</td>
<td class="nump">8,059,612<span></span>
</td>
<td class="nump">15,217,926<span></span>
</td>
<td class="nump">16,213,445<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">272,679<span></span>
</td>
<td class="nump">281,841<span></span>
</td>
<td class="nump">545,315<span></span>
</td>
<td class="nump">563,682<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">(1,093,218)<span></span>
</td>
<td class="nump">499,531<span></span>
</td>
<td class="num">(1,521,719)<span></span>
</td>
<td class="nump">1,335,038<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="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="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">406,629<span></span>
</td>
<td class="nump">22,682<span></span>
</td>
<td class="nump">742,695<span></span>
</td>
<td class="nump">178,346<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 $146,000 and $160,000, respectively</a></td>
<td class="nump">5,543,477<span></span>
</td>
<td class="nump">6,330,240<span></span>
</td>
<td class="nump">5,543,477<span></span>
</td>
<td class="nump">6,330,240<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">7,940,159<span></span>
</td>
<td class="nump">8,341,612<span></span>
</td>
<td class="nump">7,940,159<span></span>
</td>
<td class="nump">8,341,612<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,759,709<span></span>
</td>
<td class="nump">9,396,988<span></span>
</td>
<td class="nump">9,759,709<span></span>
</td>
<td class="nump">9,396,988<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="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>
<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">689,818<span></span>
</td>
<td class="nump">963,786<span></span>
</td>
<td class="nump">1,562,730<span></span>
</td>
<td class="nump">2,007,649<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">30,732<span></span>
</td>
<td class="nump">33,363<span></span>
</td>
<td class="nump">61,464<span></span>
</td>
<td class="nump">66,726<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">87,166<span></span>
</td>
<td class="nump">191,011<span></span>
</td>
<td class="nump">276,481<span></span>
</td>
<td class="nump">423,390<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="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="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">0<span></span>
</td>
<td class="nump">0<span></span>
</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_AccountsReceivableNetCurrent', window );">Accounts receivable - Less allowances of $146,000 and $160,000, respectively</a></td>
<td class="nump">360,924<span></span>
</td>
<td class="nump">511,987<span></span>
</td>
<td class="nump">360,924<span></span>
</td>
<td class="nump">511,987<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,483,084<span></span>
</td>
<td class="nump">1,273,761<span></span>
</td>
<td class="nump">1,483,084<span></span>
</td>
<td class="nump">1,273,761<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,242,033<span></span>
</td>
<td class="nump">1,367,179<span></span>
</td>
<td class="nump">1,242,033<span></span>
</td>
<td class="nump">1,367,179<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="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_UnallocatedCorporateMember', window );">Unallocated Corporate</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>
</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="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">2,664<span></span>
</td>
<td class="nump">5,220<span></span>
</td>
<td class="nump">5,328<span></span>
</td>
<td class="nump">10,440<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="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">(681,199)<span></span>
</td>
<td class="num">(497,736)<span></span>
</td>
<td class="num">(1,219,736)<span></span>
</td>
<td class="num">(997,064)<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">21,745<span></span>
</td>
<td class="nump">2,098<span></span>
</td>
<td class="nump">62,331<span></span>
</td>
<td class="nump">3,853<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="num">(59,800)<span></span>
</td>
<td class="nump">68,427<span></span>
</td>
<td class="nump">17,553<span></span>
</td>
<td class="nump">33,357<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 $146,000 and $160,000, respectively</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</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="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,008,192<span></span>
</td>
<td class="nump">1,260,552<span></span>
</td>
<td class="nump">1,008,192<span></span>
</td>
<td class="nump">1,260,552<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,625,285<span></span>
</td>
<td class="nump">$ 4,028,553<span></span>
</td>
<td class="nump">$ 4,625,285<span></span>
</td>
<td class="nump">$ 4,028,553<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=fil_UnallocatedCorporateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_UnallocatedCorporateMember</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>32
<FILENAME>d440811d10q_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/20230630"
  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-20230630.xsd" xlink:type="simple"/>
    <context id="D230101_230630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="E23Q2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="I230807">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
        </entity>
        <period>
            <instant>2023-08-07</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="Y23Q2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Y22Q2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="D220101_220630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </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">
        <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="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="Y23Q2_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-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="E23Q2_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-06-30</instant>
        </period>
    </context>
    <context id="E23Q2_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-06-30</instant>
        </period>
    </context>
    <context id="E23Q2_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-06-30</instant>
        </period>
    </context>
    <context id="E23Q2_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-06-30</instant>
        </period>
    </context>
    <context id="E23Q2_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-06-30</instant>
        </period>
    </context>
    <context id="E21">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="E21_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>2021-12-31</instant>
        </period>
    </context>
    <context id="E21_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>2021-12-31</instant>
        </period>
    </context>
    <context id="E21_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>2021-12-31</instant>
        </period>
    </context>
    <context id="E21_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>2021-12-31</instant>
        </period>
    </context>
    <context id="E21_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>2021-12-31</instant>
        </period>
    </context>
    <context id="Y22Q1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="Y22Q1_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>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="E22Q1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="E22Q1_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-03-31</instant>
        </period>
    </context>
    <context id="E22Q1_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-03-31</instant>
        </period>
    </context>
    <context id="E22Q1_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-03-31</instant>
        </period>
    </context>
    <context id="E22Q1_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-03-31</instant>
        </period>
    </context>
    <context id="E22Q1_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-03-31</instant>
        </period>
    </context>
    <context id="Y22Q2_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>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="E22Q2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="E22Q2_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-06-30</instant>
        </period>
    </context>
    <context id="E22Q2_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-06-30</instant>
        </period>
    </context>
    <context id="E22Q2_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-06-30</instant>
        </period>
    </context>
    <context id="E22Q2_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-06-30</instant>
        </period>
    </context>
    <context id="E22Q2_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-06-30</instant>
        </period>
    </context>
    <context id="D230101_230630_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>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="D230101_230630_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-06-30</endDate>
        </period>
    </context>
    <context id="D230101_230630_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-06-30</endDate>
        </period>
    </context>
    <context id="Y23Q2_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-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Y23Q2_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-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Y23Q2_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-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Y23Q2_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-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Y23Q2_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-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Y23Q2_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-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Y23Q2_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-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Y23Q2_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-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Y22Q2_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>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="Y22Q2_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>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="Y22Q2_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>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="Y22Q2_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>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="Y22Q2_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>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="Y22Q2_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>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="Y22Q2_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>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="Y22Q2_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>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="D230101_230630_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-06-30</endDate>
        </period>
    </context>
    <context id="D230101_230630_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-06-30</endDate>
        </period>
    </context>
    <context id="D230101_230630_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-06-30</endDate>
        </period>
    </context>
    <context id="D230101_230630_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-06-30</endDate>
        </period>
    </context>
    <context id="D230101_230630_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-06-30</endDate>
        </period>
    </context>
    <context id="D230101_230630_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-06-30</endDate>
        </period>
    </context>
    <context id="D220101_220630_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>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="D220101_220630_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>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="D220101_220630_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>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="D220101_220630_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>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="D220101_220630_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>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="D220101_220630_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>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="D220101_220630_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>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="D220101_220630_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>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="D230101_230630_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>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Y23Q2_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-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Y23Q2_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-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Y23Q2_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-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Y23Q2_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-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Y23Q2_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-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Y23Q2_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-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Y22Q2_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>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="Y22Q2_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>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="Y22Q2_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>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="Y22Q2_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>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="Y22Q2_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>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="Y22Q2_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>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="D230101_230630_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-06-30</endDate>
        </period>
    </context>
    <context id="D230101_230630_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-06-30</endDate>
        </period>
    </context>
    <context id="D230101_230630_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-06-30</endDate>
        </period>
    </context>
    <context id="D230101_230630_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-06-30</endDate>
        </period>
    </context>
    <context id="D230101_230630_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-06-30</endDate>
        </period>
    </context>
    <context id="D230101_230630_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-06-30</endDate>
        </period>
    </context>
    <context id="D220101_220630_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>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="D220101_220630_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>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="D220101_220630_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>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="D220101_220630_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>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="D220101_220630_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>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="D220101_220630_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>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="D230101_230630_StBusnSeg-UnallocatedCorporate">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:UnallocatedCorporateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="Y23Q2_StBusnSeg-UnallocatedCorporate">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:UnallocatedCorporateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="E23Q2_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-06-30</instant>
        </period>
    </context>
    <context id="E23Q2_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-06-30</instant>
        </period>
    </context>
    <context id="E23Q2_StBusnSeg-UnallocatedCorporate">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:UnallocatedCorporateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="Y22Q2_StBusnSeg-UnallocatedCorporate">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:UnallocatedCorporateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="E22Q2_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>2022-06-30</instant>
        </period>
    </context>
    <context id="E22Q2_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>2022-06-30</instant>
        </period>
    </context>
    <context id="E22Q2_StBusnSeg-UnallocatedCorporate">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:UnallocatedCorporateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="D220101_220630_StBusnSeg-UnallocatedCorporate">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000019871</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fil:UnallocatedCorporateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </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="D230101_230630" id="fact1">0000019871</dei:EntityCentralIndexKey>
    <dei:CurrentFiscalYearEndDate contextRef="D230101_230630" id="fact2">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:EntityRegistrantName contextRef="D230101_230630" id="fact3">CHICAGO RIVET &amp; MACHINE CO</dei:EntityRegistrantName>
    <dei:SecurityExchangeName contextRef="D230101_230630" id="fact4">NYSEAMER</dei:SecurityExchangeName>
    <dei:AmendmentFlag contextRef="D230101_230630" id="fact5">false</dei:AmendmentFlag>
    <dei:DocumentFiscalYearFocus contextRef="D230101_230630" id="fact6">2023</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus contextRef="D230101_230630" id="fact7">Q2</dei:DocumentFiscalPeriodFocus>
    <dei:DocumentTransitionReport contextRef="D230101_230630" id="fact8">false</dei:DocumentTransitionReport>
    <dei:DocumentType contextRef="D230101_230630">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport contextRef="D230101_230630">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate contextRef="D230101_230630">2023-06-30</dei:DocumentPeriodEndDate>
    <dei:EntityFileNumber contextRef="D230101_230630">000-01227</dei:EntityFileNumber>
    <dei:EntityIncorporationStateCountryCode contextRef="D230101_230630">IL</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber contextRef="D230101_230630">36-0904920</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="D230101_230630">901 Frontenac Road</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="D230101_230630">Naperville</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="D230101_230630">IL</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="D230101_230630">60563</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="D230101_230630">630</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="D230101_230630">357-8500</dei:LocalPhoneNumber>
    <dei:Security12bTitle contextRef="D230101_230630">Common Stock, par value $1.00 per share</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="D230101_230630">CVR</dei:TradingSymbol>
    <dei:EntityCurrentReportingStatus contextRef="D230101_230630">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent contextRef="D230101_230630">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory contextRef="D230101_230630">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness contextRef="D230101_230630">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany contextRef="D230101_230630">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityEmergingGrowthCompany contextRef="D230101_230630">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany contextRef="D230101_230630">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding contextRef="I230807" decimals="INF" unitRef="Shares">966132</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="E23Q2" decimals="INF" unitRef="USD">1524167</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="E22" decimals="INF" unitRef="USD">4045101</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CertificatesOfDepositAtCarryingValue contextRef="E23Q2" decimals="INF" unitRef="USD">1694000</us-gaap:CertificatesOfDepositAtCarryingValue>
    <us-gaap:CertificatesOfDepositAtCarryingValue contextRef="E22" decimals="INF" unitRef="USD">2691000</us-gaap:CertificatesOfDepositAtCarryingValue>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="E23Q2" decimals="INF" unitRef="USD">146000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="E22" decimals="INF" unitRef="USD">160000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="E23Q2" decimals="INF" unitRef="USD">5904401</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="E22" decimals="INF" unitRef="USD">4975137</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet contextRef="E23Q2" decimals="INF" unitRef="USD">9423243</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="E22" decimals="INF" unitRef="USD">9121230</us-gaap:InventoryNet>
    <us-gaap:PrepaidTaxes contextRef="E23Q2" decimals="INF" unitRef="USD">985119</us-gaap:PrepaidTaxes>
    <us-gaap:PrepaidTaxes contextRef="E22" decimals="INF" unitRef="USD">509119</us-gaap:PrepaidTaxes>
    <us-gaap:OtherAssetsCurrent contextRef="E23Q2" decimals="INF" unitRef="USD">421999</us-gaap:OtherAssetsCurrent>
    <us-gaap:OtherAssetsCurrent contextRef="E22" decimals="INF" unitRef="USD">422747</us-gaap:OtherAssetsCurrent>
    <us-gaap:AssetsCurrent contextRef="E23Q2" decimals="INF" unitRef="USD">19952929</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent contextRef="E22" decimals="INF" unitRef="USD">21764334</us-gaap:AssetsCurrent>
    <us-gaap:LandAndLandImprovements contextRef="E23Q2" decimals="INF" unitRef="USD">1510513</us-gaap:LandAndLandImprovements>
    <us-gaap:LandAndLandImprovements contextRef="E22" decimals="INF" unitRef="USD">1510513</us-gaap:LandAndLandImprovements>
    <us-gaap:BuildingsAndImprovementsGross contextRef="E23Q2" decimals="INF" unitRef="USD">6758266</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:BuildingsAndImprovementsGross contextRef="E22" decimals="INF" unitRef="USD">6758266</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:MachineryAndEquipmentGross contextRef="E23Q2" decimals="INF" unitRef="USD">37778206</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:MachineryAndEquipmentGross contextRef="E22" decimals="INF" unitRef="USD">37080762</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="E23Q2" decimals="INF" unitRef="USD">46046985</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="E22" decimals="INF" unitRef="USD">45349541</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="E23Q2" decimals="INF" unitRef="USD">34037051</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="E22" decimals="INF" unitRef="USD">33487748</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="E23Q2" decimals="INF" unitRef="USD">12009934</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="E22" decimals="INF" unitRef="USD">11861793</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Assets contextRef="E23Q2" decimals="INF" unitRef="USD">31962863</us-gaap:Assets>
    <us-gaap:Assets contextRef="E22" decimals="INF" unitRef="USD">33626127</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent contextRef="E23Q2" decimals="INF" unitRef="USD">1234323</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent contextRef="E22" decimals="INF" unitRef="USD">697235</us-gaap:AccountsPayableCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent contextRef="E23Q2" decimals="INF" unitRef="USD">577657</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent contextRef="E22" decimals="INF" unitRef="USD">462332</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent contextRef="E23Q2" decimals="INF" unitRef="USD">84244</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent contextRef="E22" decimals="INF" unitRef="USD">327961</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:CustomerAdvancesAndDepositsCurrent contextRef="E23Q2" decimals="INF" unitRef="USD">535498</us-gaap:CustomerAdvancesAndDepositsCurrent>
    <us-gaap:CustomerAdvancesAndDepositsCurrent contextRef="E22" decimals="INF" unitRef="USD">203717</us-gaap:CustomerAdvancesAndDepositsCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="E23Q2" decimals="INF" unitRef="USD">2431722</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="E22" decimals="INF" unitRef="USD">1691245</us-gaap:LiabilitiesCurrent>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet contextRef="E23Q2" decimals="INF" unitRef="USD">864084</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet contextRef="E22" decimals="INF" unitRef="USD">948084</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:Liabilities contextRef="E23Q2" decimals="INF" unitRef="USD">3295806</us-gaap:Liabilities>
    <us-gaap:Liabilities contextRef="E22" decimals="INF" unitRef="USD">2639329</us-gaap:Liabilities>
    <us-gaap:PreferredStockParOrStatedValuePerShare contextRef="E23Q2" decimals="INF" unitRef="UsdPerShare">0</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare contextRef="E22" decimals="INF" unitRef="UsdPerShare">0</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized contextRef="E23Q2" decimals="INF" unitRef="Shares">500000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized contextRef="E22" decimals="INF" unitRef="Shares">500000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesOutstanding contextRef="E23Q2" decimals="INF" unitRef="Shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesOutstanding contextRef="E22" decimals="INF" unitRef="Shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockValue contextRef="E23Q2" decimals="128" unitRef="USD">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue contextRef="E22" decimals="128" unitRef="USD">0</us-gaap:PreferredStockValue>
    <us-gaap:CommonStockParOrStatedValuePerShare contextRef="E23Q2" decimals="INF" unitRef="UsdPerShare">1.00</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare contextRef="E22" decimals="INF" unitRef="UsdPerShare">1.00</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized contextRef="E23Q2" decimals="INF" unitRef="Shares">4000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized contextRef="E22" decimals="INF" unitRef="Shares">4000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued contextRef="E23Q2" decimals="INF" unitRef="Shares">1138096</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued contextRef="E22" decimals="INF" unitRef="Shares">1138096</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding contextRef="E23Q2" decimals="INF" unitRef="Shares">966132</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding contextRef="E22" decimals="INF" unitRef="Shares">966132</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValueOutstanding contextRef="E23Q2" decimals="INF" unitRef="USD">1138096</us-gaap:CommonStockValueOutstanding>
    <us-gaap:CommonStockValueOutstanding contextRef="E22" decimals="INF" unitRef="USD">1138096</us-gaap:CommonStockValueOutstanding>
    <us-gaap:AdditionalPaidInCapital contextRef="E23Q2" decimals="INF" unitRef="USD">447134</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AdditionalPaidInCapital contextRef="E22" decimals="INF" unitRef="USD">447134</us-gaap:AdditionalPaidInCapital>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="E23Q2" decimals="INF" unitRef="USD">31003925</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="E22" decimals="INF" unitRef="USD">33323666</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:TreasuryStockValue contextRef="E23Q2" decimals="INF" unitRef="USD">3922098</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue contextRef="E22" decimals="INF" unitRef="USD">3922098</us-gaap:TreasuryStockValue>
    <us-gaap:StockholdersEquity contextRef="E23Q2" decimals="INF" unitRef="USD">28667057</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="E22" decimals="INF" unitRef="USD">30986798</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="E23Q2" decimals="INF" unitRef="USD">31962863</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="E22" decimals="INF" unitRef="USD">33626127</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:Revenues contextRef="Y23Q2" decimals="INF" unitRef="USD">8050931</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="Y22Q2" decimals="INF" unitRef="USD">9023398</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="D230101_230630" decimals="INF" unitRef="USD">16780656</us-gaap:Revenues>
    <us-gaap:Revenues contextRef="D220101_220630" decimals="INF" unitRef="USD">18221094</us-gaap:Revenues>
    <us-gaap:CostOfRevenue contextRef="Y23Q2" decimals="INF" unitRef="USD">8379967</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue contextRef="Y22Q2" decimals="INF" unitRef="USD">7577021</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue contextRef="D230101_230630" decimals="INF" unitRef="USD">16632189</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue contextRef="D220101_220630" decimals="INF" unitRef="USD">14918495</us-gaap:CostOfRevenue>
    <us-gaap:GrossProfit contextRef="Y23Q2" decimals="INF" unitRef="USD">-329036</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="Y22Q2" decimals="INF" unitRef="USD">1446377</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="D230101_230630" decimals="INF" unitRef="USD">148467</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="D220101_220630" decimals="INF" unitRef="USD">3302599</us-gaap:GrossProfit>
    <us-gaap:SellingGeneralAndAdministrativeExpense contextRef="Y23Q2" decimals="INF" unitRef="USD">1359465</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense contextRef="Y22Q2" decimals="INF" unitRef="USD">1263921</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense contextRef="D230101_230630" decimals="INF" unitRef="USD">2617160</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense contextRef="D220101_220630" decimals="INF" unitRef="USD">2559585</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:OperatingIncomeLoss contextRef="Y23Q2" decimals="INF" unitRef="USD">-1688501</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss contextRef="Y22Q2" decimals="INF" unitRef="USD">182456</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss contextRef="D230101_230630" decimals="INF" unitRef="USD">-2468693</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss contextRef="D220101_220630" decimals="INF" unitRef="USD">743014</us-gaap:OperatingIncomeLoss>
    <us-gaap:OtherNonoperatingIncomeExpense contextRef="Y23Q2" decimals="INF" unitRef="USD">22995</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense contextRef="Y22Q2" decimals="INF" unitRef="USD">12448</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense contextRef="D230101_230630" decimals="INF" unitRef="USD">66050</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense contextRef="D220101_220630" decimals="INF" unitRef="USD">22203</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic contextRef="Y23Q2" decimals="INF" unitRef="USD">-1665506</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic contextRef="Y22Q2" decimals="INF" unitRef="USD">194904</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic contextRef="D230101_230630" decimals="INF" unitRef="USD">-2402643</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic contextRef="D220101_220630" decimals="INF" unitRef="USD">765217</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="Y23Q2" decimals="INF" unitRef="USD">-354000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="Y22Q2" decimals="INF" unitRef="USD">41000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="D230101_230630" decimals="INF" unitRef="USD">-508000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="D220101_220630" decimals="INF" unitRef="USD">164000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss contextRef="Y23Q2" decimals="INF" unitRef="USD">-1311506</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="Y22Q2" decimals="INF" unitRef="USD">153904</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="D230101_230630" decimals="INF" unitRef="USD">-1894643</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="D220101_220630" decimals="INF" unitRef="USD">601217</us-gaap:NetIncomeLoss>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare contextRef="Y23Q2" decimals="INF" unitRef="UsdPerShare">-1.36</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare contextRef="Y22Q2" decimals="INF" unitRef="UsdPerShare">0.16</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="D230101_230630"
      decimals="INF"
      unitRef="UsdPerShare">-1.96</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="D220101_220630"
      decimals="INF"
      unitRef="UsdPerShare">0.62</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare contextRef="Y23Q2" decimals="INF" unitRef="UsdPerShare">-1.36</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare contextRef="Y22Q2" decimals="INF" unitRef="UsdPerShare">0.16</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="D230101_230630"
      decimals="INF"
      unitRef="UsdPerShare">-1.96</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="D220101_220630"
      decimals="INF"
      unitRef="UsdPerShare">0.62</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="Y23Q2" decimals="INF" unitRef="Shares">966132</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="Y22Q2" decimals="INF" unitRef="Shares">966132</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="D230101_230630" decimals="INF" unitRef="Shares">966132</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="D220101_220630" decimals="INF" unitRef="Shares">966132</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="Y23Q2" decimals="INF" unitRef="Shares">966132</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="Y22Q2" decimals="INF" unitRef="Shares">966132</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="D230101_230630" decimals="INF" unitRef="Shares">966132</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="D220101_220630" decimals="INF" unitRef="Shares">966132</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:CommonStockDividendsPerShareDeclared contextRef="Y23Q2" decimals="INF" unitRef="UsdPerShare">0.22</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared contextRef="Y22Q2" decimals="INF" unitRef="UsdPerShare">0.22</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="D230101_230630"
      decimals="INF"
      unitRef="UsdPerShare">0.44</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="D220101_220630"
      decimals="INF"
      unitRef="UsdPerShare">0.44</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:StockholdersEquity
      contextRef="E22_StEqComps-PrefStock"
      decimals="INF"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="E22_StEqComps-CommonStock"
      decimals="INF"
      unitRef="Shares">966132</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="E22_StEqComps-CommonStock"
      decimals="INF"
      unitRef="USD">1138096</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E22_StEqComps-AddPaidInCap"
      decimals="INF"
      unitRef="USD">447134</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E22_StEqComps-RetainedEarnings"
      decimals="INF"
      unitRef="USD">33323666</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="E22_StEqComps-TreasuryStockCommon"
      decimals="INF"
      unitRef="Shares">171964</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="E22_StEqComps-TreasuryStockCommon"
      decimals="INF"
      unitRef="USD">-3922098</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="E22" decimals="INF" unitRef="USD">30986798</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="Y23Q1_StEqComps-RetainedEarnings"
      decimals="INF"
      unitRef="USD">-583137</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="Y23Q1" decimals="INF" unitRef="USD">-583137</us-gaap:NetIncomeLoss>
    <us-gaap:CommonStockDividendsPerShareDeclared contextRef="Y23Q1" decimals="INF" unitRef="UsdPerShare">0.22</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:Dividends
      contextRef="Y23Q1_StEqComps-RetainedEarnings"
      decimals="INF"
      unitRef="USD">212549</us-gaap:Dividends>
    <us-gaap:Dividends contextRef="Y23Q1" decimals="INF" unitRef="USD">212549</us-gaap:Dividends>
    <us-gaap:StockholdersEquity
      contextRef="E23Q1_StEqComps-PrefStock"
      decimals="INF"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="E23Q1_StEqComps-CommonStock"
      decimals="INF"
      unitRef="Shares">966132</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="E23Q1_StEqComps-CommonStock"
      decimals="INF"
      unitRef="USD">1138096</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E23Q1_StEqComps-AddPaidInCap"
      decimals="INF"
      unitRef="USD">447134</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E23Q1_StEqComps-RetainedEarnings"
      decimals="INF"
      unitRef="USD">32527980</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="E23Q1_StEqComps-TreasuryStockCommon"
      decimals="INF"
      unitRef="Shares">171964</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="E23Q1_StEqComps-TreasuryStockCommon"
      decimals="INF"
      unitRef="USD">-3922098</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="E23Q1" decimals="INF" unitRef="USD">30191112</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="Y23Q2_StEqComps-RetainedEarnings"
      decimals="INF"
      unitRef="USD">-1311506</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="Y23Q2" decimals="INF" unitRef="USD">-1311506</us-gaap:NetIncomeLoss>
    <us-gaap:CommonStockDividendsPerShareDeclared contextRef="Y23Q2" decimals="INF" unitRef="UsdPerShare">0.22</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:Dividends
      contextRef="Y23Q2_StEqComps-RetainedEarnings"
      decimals="INF"
      unitRef="USD">212549</us-gaap:Dividends>
    <us-gaap:Dividends contextRef="Y23Q2" decimals="INF" unitRef="USD">212549</us-gaap:Dividends>
    <us-gaap:StockholdersEquity
      contextRef="E23Q2_StEqComps-PrefStock"
      decimals="INF"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="E23Q2_StEqComps-CommonStock"
      decimals="INF"
      unitRef="Shares">966132</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="E23Q2_StEqComps-CommonStock"
      decimals="INF"
      unitRef="USD">1138096</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E23Q2_StEqComps-AddPaidInCap"
      decimals="INF"
      unitRef="USD">447134</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E23Q2_StEqComps-RetainedEarnings"
      decimals="INF"
      unitRef="USD">31003925</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="E23Q2_StEqComps-TreasuryStockCommon"
      decimals="INF"
      unitRef="Shares">171964</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="E23Q2_StEqComps-TreasuryStockCommon"
      decimals="INF"
      unitRef="USD">-3922098</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="E23Q2" decimals="INF" unitRef="USD">28667057</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E21_StEqComps-PrefStock"
      decimals="INF"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="E21_StEqComps-CommonStock"
      decimals="INF"
      unitRef="Shares">966132</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="E21_StEqComps-CommonStock"
      decimals="INF"
      unitRef="USD">1138096</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E21_StEqComps-AddPaidInCap"
      decimals="INF"
      unitRef="USD">447134</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E21_StEqComps-RetainedEarnings"
      decimals="INF"
      unitRef="USD">31306233</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="E21_StEqComps-TreasuryStockCommon"
      decimals="INF"
      unitRef="Shares">171964</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="E21_StEqComps-TreasuryStockCommon"
      decimals="INF"
      unitRef="USD">-3922098</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="E21" decimals="INF" unitRef="USD">28969365</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="Y22Q1_StEqComps-RetainedEarnings"
      decimals="INF"
      unitRef="USD">447313</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="Y22Q1" decimals="INF" unitRef="USD">447313</us-gaap:NetIncomeLoss>
    <us-gaap:CommonStockDividendsPerShareDeclared contextRef="Y22Q1" decimals="INF" unitRef="UsdPerShare">0.22</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:Dividends
      contextRef="Y22Q1_StEqComps-RetainedEarnings"
      decimals="INF"
      unitRef="USD">212549</us-gaap:Dividends>
    <us-gaap:Dividends contextRef="Y22Q1" decimals="INF" unitRef="USD">212549</us-gaap:Dividends>
    <us-gaap:StockholdersEquity
      contextRef="E22Q1_StEqComps-PrefStock"
      decimals="INF"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="E22Q1_StEqComps-CommonStock"
      decimals="INF"
      unitRef="Shares">966132</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="E22Q1_StEqComps-CommonStock"
      decimals="INF"
      unitRef="USD">1138096</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E22Q1_StEqComps-AddPaidInCap"
      decimals="INF"
      unitRef="USD">447134</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E22Q1_StEqComps-RetainedEarnings"
      decimals="INF"
      unitRef="USD">31540997</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="E22Q1_StEqComps-TreasuryStockCommon"
      decimals="INF"
      unitRef="Shares">171964</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="E22Q1_StEqComps-TreasuryStockCommon"
      decimals="INF"
      unitRef="USD">-3922098</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="E22Q1" decimals="INF" unitRef="USD">29204129</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="Y22Q2_StEqComps-RetainedEarnings"
      decimals="INF"
      unitRef="USD">153904</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="Y22Q2" decimals="INF" unitRef="USD">153904</us-gaap:NetIncomeLoss>
    <us-gaap:CommonStockDividendsPerShareDeclared contextRef="Y22Q2" decimals="INF" unitRef="UsdPerShare">0.22</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:Dividends
      contextRef="Y22Q2_StEqComps-RetainedEarnings"
      decimals="INF"
      unitRef="USD">212549</us-gaap:Dividends>
    <us-gaap:Dividends contextRef="Y22Q2" decimals="INF" unitRef="USD">212549</us-gaap:Dividends>
    <us-gaap:StockholdersEquity
      contextRef="E22Q2_StEqComps-PrefStock"
      decimals="INF"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="E22Q2_StEqComps-CommonStock"
      decimals="INF"
      unitRef="Shares">966132</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="E22Q2_StEqComps-CommonStock"
      decimals="INF"
      unitRef="USD">1138096</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E22Q2_StEqComps-AddPaidInCap"
      decimals="INF"
      unitRef="USD">447134</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="E22Q2_StEqComps-RetainedEarnings"
      decimals="INF"
      unitRef="USD">31482352</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="E22Q2_StEqComps-TreasuryStockCommon"
      decimals="INF"
      unitRef="Shares">171964</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="E22Q2_StEqComps-TreasuryStockCommon"
      decimals="INF"
      unitRef="USD">-3922098</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="E22Q2" decimals="INF" unitRef="USD">29145484</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss contextRef="D230101_230630" decimals="INF" unitRef="USD">-1894643</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="D220101_220630" decimals="INF" unitRef="USD">601217</us-gaap:NetIncomeLoss>
    <us-gaap:Depreciation contextRef="D230101_230630" decimals="INF" unitRef="USD">612107</us-gaap:Depreciation>
    <us-gaap:Depreciation contextRef="D220101_220630" decimals="INF" unitRef="USD">640848</us-gaap:Depreciation>
    <us-gaap:GainLossOnDispositionOfAssets contextRef="D230101_230630" decimals="INF" unitRef="USD">-31500</us-gaap:GainLossOnDispositionOfAssets>
    <us-gaap:GainLossOnDispositionOfAssets contextRef="D220101_220630" decimals="INF" unitRef="USD">0</us-gaap:GainLossOnDispositionOfAssets>
    <us-gaap:DeferredIncomeTaxExpenseBenefit contextRef="D230101_230630" decimals="INF" unitRef="USD">-84000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit contextRef="D220101_220630" decimals="INF" unitRef="USD">-46000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="D230101_230630" decimals="INF" unitRef="USD">-929264</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="D220101_220630" decimals="INF" unitRef="USD">-1194243</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories contextRef="D230101_230630" decimals="INF" unitRef="USD">-302013</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories contextRef="D220101_220630" decimals="INF" unitRef="USD">-1095593</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets contextRef="D230101_230630" decimals="INF" unitRef="USD">-475252</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets contextRef="D220101_220630" decimals="INF" unitRef="USD">-78145</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable contextRef="D230101_230630" decimals="INF" unitRef="USD">537088</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable contextRef="D220101_220630" decimals="INF" unitRef="USD">382910</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities contextRef="D230101_230630" decimals="INF" unitRef="USD">115325</us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities>
    <us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities contextRef="D220101_220630" decimals="INF" unitRef="USD">235473</us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherAccruedLiabilities contextRef="D230101_230630" decimals="INF" unitRef="USD">-243717</us-gaap:IncreaseDecreaseInOtherAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherAccruedLiabilities contextRef="D220101_220630" decimals="INF" unitRef="USD">91825</us-gaap:IncreaseDecreaseInOtherAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInCustomerAdvancesAndDeposits contextRef="D230101_230630" decimals="INF" unitRef="USD">331781</us-gaap:IncreaseDecreaseInCustomerAdvancesAndDeposits>
    <us-gaap:IncreaseDecreaseInCustomerAdvancesAndDeposits contextRef="D220101_220630" decimals="INF" unitRef="USD">-75713</us-gaap:IncreaseDecreaseInCustomerAdvancesAndDeposits>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="D230101_230630" decimals="INF" unitRef="USD">-2364088</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="D220101_220630" decimals="INF" unitRef="USD">-537421</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquireProductiveAssets contextRef="D230101_230630" decimals="INF" unitRef="USD">760248</us-gaap:PaymentsToAcquireProductiveAssets>
    <us-gaap:PaymentsToAcquireProductiveAssets contextRef="D220101_220630" decimals="INF" unitRef="USD">211703</us-gaap:PaymentsToAcquireProductiveAssets>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment contextRef="D230101_230630" decimals="INF" unitRef="USD">31500</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment contextRef="D220101_220630" decimals="INF" unitRef="USD">0</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities contextRef="D230101_230630" decimals="INF" unitRef="USD">997000</us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities>
    <us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities contextRef="D220101_220630" decimals="INF" unitRef="USD">0</us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="D230101_230630" decimals="INF" unitRef="USD">268252</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="D220101_220630" decimals="INF" unitRef="USD">-211703</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:PaymentsOfDividendsCommonStock contextRef="D230101_230630" decimals="INF" unitRef="USD">425098</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock contextRef="D220101_220630" decimals="INF" unitRef="USD">425098</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="D230101_230630" decimals="INF" unitRef="USD">-425098</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="D220101_220630" decimals="INF" unitRef="USD">-425098</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect contextRef="D230101_230630" decimals="INF" unitRef="USD">-2520934</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect contextRef="D220101_220630" decimals="INF" unitRef="USD">-1174222</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="E22" decimals="INF" unitRef="USD">4045101</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="E21" decimals="INF" unitRef="USD">2036954</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="E23Q2" decimals="INF" unitRef="USD">1524167</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="E22Q2" decimals="INF" unitRef="USD">862732</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:SignificantAccountingPoliciesTextBlock contextRef="D230101_230630">&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 June 30, 2023 (unaudited) and December 31, 2022 (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, 2022.&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 six month period ended June 30, 2023 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 June 2016, the FASB issued ASU No. 2016-13, Financial Instruments&#160;- Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments and in November 2018 issued an amendment, ASU 2018-19, Codification Improvements to Topic 326, Financial Instruments &#x2013;&#160;Credit Losses. &#160;ASU 2016-13 amends the impairment model by requiring entities to use a forward-looking approach based on expected losses rather than incurred losses to estimate credit losses on certain types of financial instruments, including trade receivables. This may result in the earlier recognition of allowances for losses. ASU 2016-13 and ASU 2018-19 should be applied on either a prospective transition or modified-retrospective approach depending on the subtopic. &#160;ASU 2016-13 is effective for annual periods beginning after December 15, 2022, including interim periods within those fiscal years, with early adoption permitted. The Company adopted this ASU on January 1, 2023, using the modified retrospective approach. The adoption did not result in the recognition of a cumulative adjustment to beginning retained earnings, nor did it have a material impact on the condensed consolidated financial statements.&lt;/p&gt; </us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock contextRef="D230101_230630">&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 June 30, 2023 (unaudited) and December 31, 2022 (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, 2022.&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 six month period ended June 30, 2023 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 June 2016, the FASB issued ASU No. 2016-13, Financial Instruments&#160;- Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments and in November 2018 issued an amendment, ASU 2018-19, Codification Improvements to Topic 326, Financial Instruments &#x2013;&#160;Credit Losses. &#160;ASU 2016-13 amends the impairment model by requiring entities to use a forward-looking approach based on expected losses rather than incurred losses to estimate credit losses on certain types of financial instruments, including trade receivables. This may result in the earlier recognition of allowances for losses. ASU 2016-13 and ASU 2018-19 should be applied on either a prospective transition or modified-retrospective approach depending on the subtopic. &#160;ASU 2016-13 is effective for annual periods beginning after December 15, 2022, including interim periods within those fiscal years, with early adoption permitted. The Company adopted this ASU on January 1, 2023, using the modified retrospective approach. The adoption did not result in the recognition of a cumulative adjustment to beginning retained earnings, nor did it have a material impact on the condensed consolidated financial statements.&lt;/p&gt; </us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <us-gaap:ConcentrationRiskDisclosureTextBlock contextRef="D230101_230630">&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 in part 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="D230101_230630">&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 in part 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="D230101_230630">&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.&lt;/p&gt; </us-gaap:LegalMattersAndContingenciesTextBlock>
    <us-gaap:CommitmentsAndContingenciesPolicyTextBlock contextRef="D230101_230630">&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.&lt;/p&gt; </us-gaap:CommitmentsAndContingenciesPolicyTextBlock>
    <us-gaap:RevenueFromContractWithCustomerTextBlock contextRef="D230101_230630">&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 manufacturing 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 second quarter of 2023, the Company did not realize any revenue related to such contracts and $379,000 is the remaining performance obligation under such contracts.&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 income. &#160;These adjustments primarily relate to customer returns and allowances. &#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 June 30, 2023 and December 31, 2022 reserves for warranty claims were not material. &#160;Cash received by the Company prior to shipment 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 income.&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"&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 June 30, 2023:&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,959,381&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;38,223&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,997,604&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,401,732&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;651,595&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,053,327&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;7,361,113&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;&#160;&#160;689,818&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;8,050,931&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 June 30, 2022:&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;4,550,809&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;59,818&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;4,610,627&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;3,508,803&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;903,968&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;4,412,771&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;8,059,612&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;&#160;963,786&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;9,023,398&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;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;Six Months Ended June 30, 2023:&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;9,965,571&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;83,101&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;10,048,672&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;5,252,355&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,479,629&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;6,731,984&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;15,217,926&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;1,562,730&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;16,780,656&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;Six Months Ended June 30, 2022:&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;9,454,992&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;101,652&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;9,556,644&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;6,758,453&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,905,997&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;8,664,450&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;16,213,445&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;2,007,649&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;18,221,094&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 June 30, 2023:&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;6,137,476&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;654,546&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,792,022&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,223,637&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;35,272&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,258,909&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;7,361,113&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;689,818&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;8,050,931&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 June 30, 2022:&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,796,779&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;932,468&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,729,247&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,262,833&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;31,318&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,294,151&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;8,059,612&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;963,786&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;9,023,398&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;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;Six Months Ended June 30, 2023&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;12,529,223&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;1,441,117&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;13,970,340&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;2,688,703&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;121,613&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;2,810,316&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;15,217,926&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;1,562,730&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;16,780,656&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;Six Months Ended June 30, 2022&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;13,556,908&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;1,936,618&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;15,493,526&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;2,656,537&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;71,031&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;2,727,568&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;16,213,445&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;2,007,649&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;18,221,094&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="D230101_230630">&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 manufacturing 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 second quarter of 2023, the Company did not realize any revenue related to such contracts and $379,000 is the remaining performance obligation under such contracts.&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 income. &#160;These adjustments primarily relate to customer returns and allowances. &#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 June 30, 2023 and December 31, 2022 reserves for warranty claims were not material. &#160;Cash received by the Company prior to shipment 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 income.&lt;/p&gt; &lt;p style="font:10pt Arial;margin:0;color:#000000"&gt;&#160;&lt;/p&gt; </us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock contextRef="D230101_230630_ProductOrService-EndMarket">&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 June 30, 2023:&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,959,381&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;38,223&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,997,604&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,401,732&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;651,595&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,053,327&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;7,361,113&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;&#160;&#160;689,818&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;8,050,931&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 June 30, 2022:&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;4,550,809&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;59,818&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;4,610,627&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;3,508,803&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;903,968&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;4,412,771&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;8,059,612&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;&#160;963,786&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;9,023,398&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;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;Six Months Ended June 30, 2023:&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;9,965,571&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;83,101&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;10,048,672&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;5,252,355&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,479,629&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;6,731,984&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;15,217,926&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;1,562,730&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;16,780,656&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;Six Months Ended June 30, 2022:&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;9,454,992&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;101,652&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;9,556,644&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;6,758,453&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,905,997&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;8,664,450&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;16,213,445&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;2,007,649&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;18,221,094&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="Y23Q2_ProductOrService-Automotive_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">4959381</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q2_ProductOrService-Automotive_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">38223</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q2_ProductOrService-Automotive"
      decimals="INF"
      unitRef="USD">4997604</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q2_ProductOrService-Nonautomotive_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">2401732</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q2_ProductOrService-Nonautomotive_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">651595</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q2_ProductOrService-Nonautomotive"
      decimals="INF"
      unitRef="USD">3053327</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">7361113</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">689818</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y23Q2" decimals="INF" unitRef="USD">8050931</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y22Q2_ProductOrService-Automotive_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">4550809</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y22Q2_ProductOrService-Automotive_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">59818</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y22Q2_ProductOrService-Automotive"
      decimals="INF"
      unitRef="USD">4610627</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y22Q2_ProductOrService-Nonautomotive_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">3508803</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y22Q2_ProductOrService-Nonautomotive_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">903968</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y22Q2_ProductOrService-Nonautomotive"
      decimals="INF"
      unitRef="USD">4412771</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y22Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">8059612</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y22Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">963786</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y22Q2" decimals="INF" unitRef="USD">9023398</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D230101_230630_ProductOrService-Automotive_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">9965571</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D230101_230630_ProductOrService-Automotive_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">83101</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D230101_230630_ProductOrService-Automotive"
      decimals="INF"
      unitRef="USD">10048672</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D230101_230630_ProductOrService-Nonautomotive_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">5252355</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D230101_230630_ProductOrService-Nonautomotive_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">1479629</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D230101_230630_ProductOrService-Nonautomotive"
      decimals="INF"
      unitRef="USD">6731984</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D230101_230630_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">15217926</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D230101_230630_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">1562730</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="D230101_230630" decimals="INF" unitRef="USD">16780656</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D220101_220630_ProductOrService-Automotive_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">9454992</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D220101_220630_ProductOrService-Automotive_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">101652</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D220101_220630_ProductOrService-Automotive"
      decimals="INF"
      unitRef="USD">9556644</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D220101_220630_ProductOrService-Nonautomotive_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">6758453</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D220101_220630_ProductOrService-Nonautomotive_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">1905997</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D220101_220630_ProductOrService-Nonautomotive"
      decimals="INF"
      unitRef="USD">8664450</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D220101_220630_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">16213445</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D220101_220630_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">2007649</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="D220101_220630" decimals="INF" unitRef="USD">18221094</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:DisaggregationOfRevenueTableTextBlock contextRef="D230101_230630_StGeo-Location">&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 June 30, 2023:&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;6,137,476&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;654,546&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,792,022&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,223,637&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;35,272&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,258,909&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;7,361,113&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;689,818&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;8,050,931&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 June 30, 2022:&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,796,779&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;932,468&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,729,247&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,262,833&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;31,318&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,294,151&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;8,059,612&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;963,786&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;9,023,398&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;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;Six Months Ended June 30, 2023&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;12,529,223&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;1,441,117&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;13,970,340&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;2,688,703&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;121,613&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;2,810,316&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;15,217,926&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;1,562,730&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;16,780,656&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;Six Months Ended June 30, 2022&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;13,556,908&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;1,936,618&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;15,493,526&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;2,656,537&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;71,031&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;2,727,568&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;16,213,445&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;2,007,649&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;18,221,094&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="Y23Q2_StGeo-US_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">6137476</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q2_StGeo-US_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">654546</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y23Q2_StGeo-US" decimals="INF" unitRef="USD">6792022</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q2_StGeo-NonUs_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">1223637</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q2_StGeo-NonUs_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">35272</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y23Q2_StGeo-NonUs" decimals="INF" unitRef="USD">1258909</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">7361113</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y23Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">689818</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y23Q2" decimals="INF" unitRef="USD">8050931</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y22Q2_StGeo-US_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">6796779</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y22Q2_StGeo-US_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">932468</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y22Q2_StGeo-US" decimals="INF" unitRef="USD">7729247</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y22Q2_StGeo-NonUs_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">1262833</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y22Q2_StGeo-NonUs_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">31318</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y22Q2_StGeo-NonUs" decimals="INF" unitRef="USD">1294151</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y22Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">8059612</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y22Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">963786</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y22Q2" decimals="INF" unitRef="USD">9023398</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D230101_230630_StGeo-US_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">12529223</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D230101_230630_StGeo-US_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">1441117</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D230101_230630_StGeo-US"
      decimals="INF"
      unitRef="USD">13970340</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D230101_230630_StGeo-NonUs_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">2688703</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D230101_230630_StGeo-NonUs_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">121613</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D230101_230630_StGeo-NonUs"
      decimals="INF"
      unitRef="USD">2810316</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D230101_230630_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">15217926</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D230101_230630_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">1562730</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="D230101_230630" decimals="INF" unitRef="USD">16780656</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D220101_220630_StGeo-US_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">13556908</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D220101_220630_StGeo-US_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">1936618</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D220101_220630_StGeo-US"
      decimals="INF"
      unitRef="USD">15493526</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D220101_220630_StGeo-NonUs_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">2656537</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D220101_220630_StGeo-NonUs_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">71031</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D220101_220630_StGeo-NonUs"
      decimals="INF"
      unitRef="USD">2727568</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D220101_220630_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">16213445</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="D220101_220630_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">2007649</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="D220101_220630" decimals="INF" unitRef="USD">18221094</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:IncomeTaxDisclosureTextBlock contextRef="D230101_230630">&lt;p style="font:10pt Arial;margin:0"&gt;5. &#160;The Company&#x2019;s effective tax rates were approximately (21.3)% and 21.0% for the second quarter of 2023 and 2022, respectively, and (21.1)% and 21.4% for the six months ended June 30, 2023 and 2022, 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 2019 through 2022 tax years are subject to examination by the Internal Revenue Service (&#x201c;IRS&#x201d;). &#160;&#160;While it may be possible that a reduction could occur with respect to the Company&#x2019;s unrecognized tax benefits as an outcome of an IRS examination, 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 have been extended on any of the Company&#x2019;s federal income tax filings. The statute of limitations on the Company&#x2019;s 2019 through 2022 federal income tax returns will expire on September 15, 2023 through 2026, 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 2019 through 2022 tax years remain subject to examination by various state authorities with the latest closing period on October 31, 2026. &#160;The Company is not currently under examination by any state authority for income tax purposes and no statutes for state income tax filings have been extended.&lt;/p&gt; </us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:IncomeTaxPolicyTextBlock contextRef="D230101_230630">&lt;p style="font:10pt Arial;margin:0"&gt;5. &#160;The Company&#x2019;s effective tax rates were approximately (21.3)% and 21.0% for the second quarter of 2023 and 2022, respectively, and (21.1)% and 21.4% for the six months ended June 30, 2023 and 2022, 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 2019 through 2022 tax years are subject to examination by the Internal Revenue Service (&#x201c;IRS&#x201d;). &#160;&#160;While it may be possible that a reduction could occur with respect to the Company&#x2019;s unrecognized tax benefits as an outcome of an IRS examination, 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 have been extended on any of the Company&#x2019;s federal income tax filings. The statute of limitations on the Company&#x2019;s 2019 through 2022 federal income tax returns will expire on September 15, 2023 through 2026, 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 2019 through 2022 tax years remain subject to examination by various state authorities with the latest closing period on October 31, 2026. &#160;The Company is not currently under examination by any state authority for income tax purposes and no statutes for state income tax filings have been extended.&lt;/p&gt; </us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:InventoryDisclosureTextBlock contextRef="D230101_230630">&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 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;June 30, 2023&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, 2022&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;4,466,826&#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;4,460,071&#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,939,353&#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,747,427&#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,638,064&#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,534,732&#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;10,044,243&#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;9,742,230&#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;(621,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;(621,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;9,423,243&#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;9,121,230&#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="D230101_230630">&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="D230101_230630">&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;June 30, 2023&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, 2022&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;4,466,826&#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;4,460,071&#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,939,353&#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,747,427&#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,638,064&#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,534,732&#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;10,044,243&#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;9,742,230&#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;(621,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;(621,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;9,423,243&#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;9,121,230&#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="E23Q2" decimals="INF" unitRef="USD">4466826</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryRawMaterials contextRef="E22" decimals="INF" unitRef="USD">4460071</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryWorkInProcess contextRef="E23Q2" decimals="INF" unitRef="USD">2939353</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryWorkInProcess contextRef="E22" decimals="INF" unitRef="USD">2747427</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryFinishedGoods contextRef="E23Q2" decimals="INF" unitRef="USD">2638064</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryFinishedGoods contextRef="E22" decimals="INF" unitRef="USD">2534732</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryGross contextRef="E23Q2" decimals="INF" unitRef="USD">10044243</us-gaap:InventoryGross>
    <us-gaap:InventoryGross contextRef="E22" decimals="INF" unitRef="USD">9742230</us-gaap:InventoryGross>
    <us-gaap:InventoryValuationReserves contextRef="E23Q2" decimals="INF" unitRef="USD">621000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryValuationReserves contextRef="E22" decimals="INF" unitRef="USD">621000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryNet contextRef="E23Q2" decimals="INF" unitRef="USD">9423243</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="E22" decimals="INF" unitRef="USD">9121230</us-gaap:InventoryNet>
    <us-gaap:SegmentReportingDisclosureTextBlock contextRef="D230101_230630">&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 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;Other&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 June 30, 2023:&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;7,361,113&#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;689,818&#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;8,050,931&#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;272,679&#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;30,732&#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;2,664&#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;306,075&#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&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,093,218)&#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;87,166&#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;(1,006,052)&#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;(681,199)&#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;(681,199)&#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;21,745&#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;21,745&#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;Income 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;(1,665,506)&#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;406,629&#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;(59,800)&#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;346,829&#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;5,543,477&#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;360,924&#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,904,401&#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;7,940,159&#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,483,084&#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;9,423,243&#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,759,709&#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,242,033&#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,008,192&#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;12,009,934&#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,625,285&#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,625,285&#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;31,962,863&#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 June 30, 2022:&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;8,059,612&#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;963,786&#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;9,023,398&#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;281,841&#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;33,363&#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;5,220&#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;320,424&#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&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;499,531&#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;191,011&#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;690,542&#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;(497,736)&#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;(497,736)&#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;2,098&#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;2,098&#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;Income 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;194,904&#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;22,682&#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;68,427&#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;91,109&#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;6,330,240&#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;511,987&#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,842,227&#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,341,612&#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,273,761&#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,615,373&#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,396,988&#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,367,179&#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,260,552&#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;12,044,719&#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;4,028,553&#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;4,028,553&#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;32,530,872&#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;Six Months Ended June 30, 2023:&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;15,217,926&#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;1,562,730&#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;16,780,656&#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;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;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;545,315&#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;61,464&#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,328&#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;612,107&#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&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,521,719)&#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;276,481&#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;(1,245,238)&#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;(1,219,736)&#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,219,736)&#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;62,331&#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;62,331&#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;Income 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;(2,402,643)&#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;742,695&#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;17,553&#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;760,248&#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;&#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;Six Months Ended June 30, 2022:&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;16,213,445&#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;2,007,649&#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;18,221,094&#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;563,682&#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;66,726&#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;10,440&#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;640,848&#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&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,335,038&#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;423,390&#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;1,758,428&#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;(997,064)&#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;(997,064)&#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;3,853&#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;3,853&#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;Income 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;&#160;&#160;765,217&#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;178,346&#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;33,357&#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;211,703&#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;/table&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; </us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:SegmentReportingPolicyPolicyTextBlock contextRef="D230101_230630">&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="D230101_230630">&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;Other&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 June 30, 2023:&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;7,361,113&#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;689,818&#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;8,050,931&#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;272,679&#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;30,732&#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;2,664&#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;306,075&#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&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,093,218)&#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;87,166&#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;(1,006,052)&#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;(681,199)&#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;(681,199)&#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;21,745&#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;21,745&#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;Income 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;(1,665,506)&#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;406,629&#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;(59,800)&#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;346,829&#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;5,543,477&#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;360,924&#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,904,401&#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;7,940,159&#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,483,084&#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;9,423,243&#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,759,709&#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,242,033&#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,008,192&#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;12,009,934&#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,625,285&#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,625,285&#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;31,962,863&#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 June 30, 2022:&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;8,059,612&#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;963,786&#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;9,023,398&#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;281,841&#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;33,363&#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;5,220&#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;320,424&#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&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;499,531&#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;191,011&#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;690,542&#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;(497,736)&#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;(497,736)&#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;2,098&#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;2,098&#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;Income 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;194,904&#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;22,682&#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;68,427&#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;91,109&#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;6,330,240&#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;511,987&#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,842,227&#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,341,612&#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,273,761&#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,615,373&#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,396,988&#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,367,179&#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,260,552&#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;12,044,719&#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;4,028,553&#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;4,028,553&#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;32,530,872&#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;Six Months Ended June 30, 2023:&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;15,217,926&#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;1,562,730&#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;16,780,656&#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;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;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;545,315&#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;61,464&#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,328&#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;612,107&#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&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,521,719)&#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;276,481&#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;(1,245,238)&#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;(1,219,736)&#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,219,736)&#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;62,331&#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;62,331&#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;Income 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;(2,402,643)&#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;742,695&#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;17,553&#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;760,248&#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;&#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;Six Months Ended June 30, 2022:&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;16,213,445&#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;2,007,649&#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;18,221,094&#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;563,682&#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;66,726&#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;10,440&#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;640,848&#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&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,335,038&#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;423,390&#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;1,758,428&#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;(997,064)&#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;(997,064)&#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;3,853&#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;3,853&#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;Income 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;&#160;&#160;765,217&#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;178,346&#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;33,357&#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;211,703&#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;/table&gt; &lt;p style="font:10pt Arial;margin:0"&gt;&#160;&lt;/p&gt; </us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <us-gaap:Revenues
      contextRef="Y23Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">7361113</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Y23Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">689818</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Y23Q2_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">0</us-gaap:Revenues>
    <us-gaap:Depreciation
      contextRef="Y23Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">272679</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="Y23Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">30732</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="Y23Q2_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">2664</us-gaap:Depreciation>
    <fil:SegmentOperatingprofit
      contextRef="Y23Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">-1093218</fil:SegmentOperatingprofit>
    <fil:SegmentOperatingprofit
      contextRef="Y23Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">87166</fil:SegmentOperatingprofit>
    <fil:SegmentOperatingprofit
      contextRef="Y23Q2_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">0</fil:SegmentOperatingprofit>
    <fil:SellingAndAdministrativeExpensesUnallocatedCorporate
      contextRef="Y23Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">0</fil:SellingAndAdministrativeExpensesUnallocatedCorporate>
    <fil:SellingAndAdministrativeExpensesUnallocatedCorporate
      contextRef="Y23Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">0</fil:SellingAndAdministrativeExpensesUnallocatedCorporate>
    <fil:SellingAndAdministrativeExpensesUnallocatedCorporate
      contextRef="Y23Q2_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">-681199</fil:SellingAndAdministrativeExpensesUnallocatedCorporate>
    <us-gaap:InterestAndOtherIncome
      contextRef="Y23Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">0</us-gaap:InterestAndOtherIncome>
    <us-gaap:InterestAndOtherIncome
      contextRef="Y23Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">0</us-gaap:InterestAndOtherIncome>
    <us-gaap:InterestAndOtherIncome
      contextRef="Y23Q2_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">21745</us-gaap:InterestAndOtherIncome>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="Y23Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">406629</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="Y23Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">0</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="Y23Q2_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">-59800</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="E23Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">5543477</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="E23Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">360924</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="E23Q2_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">0</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="E23Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">7940159</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="E23Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">1483084</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="E23Q2_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">0</us-gaap:InventoryNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="E23Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">9759709</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="E23Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">1242033</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="E23Q2_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">1008192</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OtherAssets
      contextRef="E23Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">0</us-gaap:OtherAssets>
    <us-gaap:OtherAssets
      contextRef="E23Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">0</us-gaap:OtherAssets>
    <us-gaap:OtherAssets
      contextRef="E23Q2_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">4625285</us-gaap:OtherAssets>
    <us-gaap:Revenues
      contextRef="Y22Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">8059612</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Y22Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">963786</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Y22Q2_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">0</us-gaap:Revenues>
    <us-gaap:Depreciation
      contextRef="Y22Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">281841</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="Y22Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">33363</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="Y22Q2_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">5220</us-gaap:Depreciation>
    <fil:SegmentOperatingprofit
      contextRef="Y22Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">499531</fil:SegmentOperatingprofit>
    <fil:SegmentOperatingprofit
      contextRef="Y22Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">191011</fil:SegmentOperatingprofit>
    <fil:SegmentOperatingprofit
      contextRef="Y22Q2_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">0</fil:SegmentOperatingprofit>
    <fil:SellingAndAdministrativeExpensesUnallocatedCorporate
      contextRef="Y22Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">0</fil:SellingAndAdministrativeExpensesUnallocatedCorporate>
    <fil:SellingAndAdministrativeExpensesUnallocatedCorporate
      contextRef="Y22Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">0</fil:SellingAndAdministrativeExpensesUnallocatedCorporate>
    <fil:SellingAndAdministrativeExpensesUnallocatedCorporate
      contextRef="Y22Q2_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">-497736</fil:SellingAndAdministrativeExpensesUnallocatedCorporate>
    <us-gaap:InterestAndOtherIncome
      contextRef="Y22Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">0</us-gaap:InterestAndOtherIncome>
    <us-gaap:InterestAndOtherIncome
      contextRef="Y22Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">0</us-gaap:InterestAndOtherIncome>
    <us-gaap:InterestAndOtherIncome
      contextRef="Y22Q2_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">2098</us-gaap:InterestAndOtherIncome>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="Y22Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">22682</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="Y22Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">0</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="Y22Q2_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">68427</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="E22Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">6330240</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="E22Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">511987</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="E22Q2_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">0</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="E22Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">8341612</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="E22Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">1273761</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="E22Q2_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">0</us-gaap:InventoryNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="E22Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">9396988</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="E22Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">1367179</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="E22Q2_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">1260552</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OtherAssets
      contextRef="E22Q2_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">0</us-gaap:OtherAssets>
    <us-gaap:OtherAssets
      contextRef="E22Q2_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">0</us-gaap:OtherAssets>
    <us-gaap:OtherAssets
      contextRef="E22Q2_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">4028553</us-gaap:OtherAssets>
    <us-gaap:Revenues
      contextRef="D230101_230630_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">15217926</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="D230101_230630_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">1562730</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="D230101_230630_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">0</us-gaap:Revenues>
    <us-gaap:Depreciation
      contextRef="D230101_230630_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">545315</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="D230101_230630_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">61464</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="D230101_230630_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">5328</us-gaap:Depreciation>
    <fil:SegmentOperatingprofit
      contextRef="D230101_230630_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">-1521719</fil:SegmentOperatingprofit>
    <fil:SegmentOperatingprofit
      contextRef="D230101_230630_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">276481</fil:SegmentOperatingprofit>
    <fil:SegmentOperatingprofit
      contextRef="D230101_230630_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">0</fil:SegmentOperatingprofit>
    <fil:SellingAndAdministrativeExpensesUnallocatedCorporate
      contextRef="D230101_230630_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">0</fil:SellingAndAdministrativeExpensesUnallocatedCorporate>
    <fil:SellingAndAdministrativeExpensesUnallocatedCorporate
      contextRef="D230101_230630_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">0</fil:SellingAndAdministrativeExpensesUnallocatedCorporate>
    <fil:SellingAndAdministrativeExpensesUnallocatedCorporate
      contextRef="D230101_230630_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">-1219736</fil:SellingAndAdministrativeExpensesUnallocatedCorporate>
    <us-gaap:InterestAndOtherIncome
      contextRef="D230101_230630_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">0</us-gaap:InterestAndOtherIncome>
    <us-gaap:InterestAndOtherIncome
      contextRef="D230101_230630_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">0</us-gaap:InterestAndOtherIncome>
    <us-gaap:InterestAndOtherIncome
      contextRef="D230101_230630_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">62331</us-gaap:InterestAndOtherIncome>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="D230101_230630_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">742695</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="D230101_230630_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">0</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="D230101_230630_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">17553</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:Revenues
      contextRef="D220101_220630_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">16213445</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="D220101_220630_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">2007649</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="D220101_220630_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">0</us-gaap:Revenues>
    <us-gaap:Depreciation
      contextRef="D220101_220630_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">563682</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="D220101_220630_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">66726</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="D220101_220630_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">10440</us-gaap:Depreciation>
    <fil:SegmentOperatingprofit
      contextRef="D220101_220630_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">1335038</fil:SegmentOperatingprofit>
    <fil:SegmentOperatingprofit
      contextRef="D220101_220630_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">423390</fil:SegmentOperatingprofit>
    <fil:SegmentOperatingprofit
      contextRef="D220101_220630_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">0</fil:SegmentOperatingprofit>
    <fil:SellingAndAdministrativeExpensesUnallocatedCorporate
      contextRef="D220101_220630_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">0</fil:SellingAndAdministrativeExpensesUnallocatedCorporate>
    <fil:SellingAndAdministrativeExpensesUnallocatedCorporate
      contextRef="D220101_220630_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">0</fil:SellingAndAdministrativeExpensesUnallocatedCorporate>
    <fil:SellingAndAdministrativeExpensesUnallocatedCorporate
      contextRef="D220101_220630_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">-997064</fil:SellingAndAdministrativeExpensesUnallocatedCorporate>
    <us-gaap:InterestAndOtherIncome
      contextRef="D220101_220630_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">0</us-gaap:InterestAndOtherIncome>
    <us-gaap:InterestAndOtherIncome
      contextRef="D220101_220630_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">0</us-gaap:InterestAndOtherIncome>
    <us-gaap:InterestAndOtherIncome
      contextRef="D220101_220630_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">3853</us-gaap:InterestAndOtherIncome>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="D220101_220630_StBusnSeg-Fastener"
      decimals="INF"
      unitRef="USD">178346</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="D220101_220630_StBusnSeg-AssemblyEquipment"
      decimals="INF"
      unitRef="USD">0</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="D220101_220630_StBusnSeg-UnallocatedCorporate"
      decimals="INF"
      unitRef="USD">33357</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>33
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
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
M^SB3J8+L#'GA:*:>8#C%.@HL#HK:^FU;E)NBNM9/ TP<'#R)4\+Y,>#'#:>
M1YG$89V$I;5I^Z)2/JRH#GMM][ 7-'6PT"1)4A(YJ'V641HEG,S 'A43AR4S
MN".6Z#=5:_^(N\+(>,0X),=C\![+F+(L9C-JCT<1Q6$5[?4RS]M=6W8%)P@^
M"&HA[#1X4;MZ1UD$8QD?"Z//DK(T25@Z@WK41AP6Q[^@K6J&86^&89?!1.3*
M((8F*\L.DN(>N<<2IQPGV=RF'"43AS6SS_3S&1Z[*DAQQDG*G<3AL:2<<$QF
MQ B/DHG3)]7F'PIQ692%*?RZCH/*^\V9_9FB33F/"HS#$CR4DXVXM[6DE[!'
M?PEEE#ASXQKR+"$T]L\,&=67!/7-HE0M[-);Z.S[O*ZA050S$[0/-BFIDH3'
MQ[V$QXYQ0NE,:B2C7)*P7/;%E]B#EG>-[7#]4%T93!EAQSO38T9)DO&9/$@.
MNM&P6'ZNI% 5@%02ZNY6]OU:U_8#@WT7Y$?NZF%,8Y:EQ]!=.P)Y$\_L5C+*
M)@G+YK1X+,-[EK@Z"/T"3@@YANL:0GN'"9M;PZ->DK!>OI-7$K ^WC<05_92
MSJ+4612N7<;20[LITE$<25@<^Y%];$0],D>R.'5*$(\AX32C9*;#(:,<$A[,
MUQ=;H>2V+C=2Z1^ZVL-X6UH25-5O/E)YIFA3TJ.2DD>[S_TZ@DV:?X$FN8;<
MK="-*%NY1''4]?E(V[&!5-F:+333_\G-:S"L)*I;HPUL<BB0O4/EJNOQN4;0
M9$IJ5%X2[E;/ZMT.RM\]HQ?X%3 X(,6ZHPLOK27"2TS3993QAX>%UI!V?T89
MY_"(//S\&'.WQ<40&.(>\W_<<#H*HQ:31[1XLREL_0F;SQXPO"PJE(NF@,WH
M!>R*+6,)=JJZQ^VFIWNC*-.P*'^41A16.ZR$V(;+>Z[G:BS%440S<ESM^RQ!
MBRF?Z[#HJ,<TK,>?E!2Z5?</"PPG>)EQ-JPF@_):>XMGZ@KO2\!.(D?GGF(Y
MA3^*- V+=)^/]23;R=EL1SV"FW(.G8ISENI:4H#+DUG(!T>_3Q'G PGIB[:G
M4G!/>6>Z 9^EOQM8'7RCL!^(_A3JNJ@T*N45N$:O$A@&U7]SZ6],W72?+2YK
M ]50=[F5 J!; WA^5=?FX<9^"1F^?*W_!U!+ P04    " #'@ =7.FA*S08#
M   2"@  &    'AL+W=O<FMS:&5E=',O<VAE970S+GAM;*V646_3,!2%_XH5
M$ *I+$[29NUH(VV=$" 0U2K@V4MN&VM.7&RG'?QZKITN-&UHV>"EM9-[CK_C
MV(G'&ZGN= Y@R'TA2CWQ<F-6%[ZOTQP*IL_D"DJ\LY"J8 :[:NGKE0*6.5$A
M_)#2V"\8+[UD[*[-5#*6E1&\A)DBNBH*IGY<@9";B1=X#Q=N^#(W]H*?C%=L
M"7,P7U8SA3V_<<EX :7FLB0*%A/O,KB8!M0*7,57#AN]TR8VRJV4=[;S/IMX
MU!*!@-18"X9_:YB"$-8).;YO3;UF3"O<;3^XOW7A,<PMTS"5XAO/3#[QAA[)
M8,$J86[DYAUL PVL7RJ%=K]D4]?&?8^DE3:RV(J1H.!E_<_NMQ.Q(PC^) BW
M@O!O!=%6$+F@-9F+=<T,2\9*;HBRU>AF&VYNG!K3\-(^QKE1>)>CSB1366;X
M4" CV-)2\(P9[%PQP<H4R-P::_*:S)B"TN1@>,H$]K_,K\G+YZ_&OD$(:^6G
MVP&OZ@'#/PSXH2K/2$1[)*1AU"&?'I=?0XKRP,G#MMS'Z$W^L,D?.K_H7_)W
MI:QM^]VV=O-=Z!5+8>+A[M*@UN E+YX%,7W3E?D_F;5F(&IF(#KFGERFJ:Q*
M?,@WD )?LUL!/7(I<'^[&< W!9DJR+@A'Z76/3*ME%T*77-2#Q2[@>S[8YT$
M_9A2.O;7NVD[RFS5[[)6CGZ3HW\TQPSW/R!:1N9&IG<]NV0)PL^->Z)?F:B
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
M.F#$?F"R[=ZG,GQB_53>G\N*2WC5V$PLVVM0)I4.'[A#M\$OLJ(/2!+W!':
MMN0S6@KJU, =B-R*U-4&[*Z(:Q7]BK@'*GGHQ![NNW2.=N[^N!2L^(7#9.Q2
M?@;T7_M'U#R_';;B^07V209D%(752ZB.AV_?#$3(KYJ\0!/Q2V+A$]XE_+/$
M0U '$L#^TN,"T"[(0?^TO/H/4$L#!!0    ( ,> !U<Z:DZD]@,    )   8
M    >&PO=V]R:W-H965T<R]S:&5E=#DN>&ULE5;1;N,V$/P50@5Z+ZGEV+[T
MD-H&DK1%>T"*(+EKGREQ;1&A2!U)V?'?=Y:2%:7G&.B++9&[L[.[PZ66>^>?
M0T44Q4MM;%AE58S-=9Z'LJ):AHEKR&)GXWPM(U[]-@^-)ZF24VWRV71ZE==2
MVVR]3&L/?KUT;33:TH,7H:UKZ0^W9-Q^E5UFQX5'O:TB+^3K92.W]$3Q:_/@
M\98/*$K79(-V5GC:K+*;R^O;!=LG@[\U[</H67 FA7//_/*G6F53)D2&RL@(
M$G\[NB-C& @TOO68V1"2'<?/1_3?4^[(I9"![ISY1ZM8K;)/F5"TD:V)CV[_
M!_7Y?&2\TIF0?L6^LYTM,E&V(;JZ=P:#6MON7[[T=1@Y?)J^XS#K'6:)=Q<H
ML?Q51KE>>K<7GJV!Q@\IU>0-<MIR4YZBQZZ&7UP_ZO <A+1*?+4E^8@V1DUA
MF4> LTE>]D"W'=#L': K<>]LK(+XS2I2;_USD!J8S8[,;F=G 3^W=B+FTPLQ
MF\[F9_#F0Z;SA#=_!^\O%T_GU;DM3KOQH;@.C2QIE4'U@?R.LO6//UQ>37\Y
M0VHQD%J<0_\_Y3\/-)N(+Q6).U<WTAX$O42R*HC2D])10/X1NY"O#L)M1"1?
M!RS)**2G7F<XDQ!?K+05KO40F7^F""LG=M)KUP(MH8.?4$[;K2C: !HAB,9K
MF&MS$+J+)%L .CYP6%& ]X>W!"N)M &(K&WT,IU0$.OY>I1E!-JS>@<XE:_?
MOM=J3P'I61141U+B*4KT_?O@L)*%T3@Y"@!"&HPG"38"@PZSHG2MC7V):GD0
M!2%Y$JW%@4L3I3!T#+II8^N)0^B$"]H<^142RSPY$LM&^M2/6EH,/8RW^ %.
M.VG:H0@)4UNX:FFX1BC):*OK%OF4-T)&YW4)0WIIR&M"P+?9U@Z5<#X(C82&
MS#R5I'>2TV"<LI)^2ZG;C&,#I:K4;"SH6PM\;#'",4&FT^!,0;#,LFN<<2'\
MM]I((&A%GAMNV[H <[AN,(\3*8LARGK4EB4UCA NL%N:5O$&9V[(;F.5ZH"+
M(=E".XI.9P5A-S)$H5JZ2.X]H0^L5]HE13/?OH:=CL8%AF'9>H\,A2RTT?'
M-6B@!H[LH)YMZMG;=*4);I3S$0'ZL:[6Y6L_0\=JV. K$[=7+^=.VS^%ADJ]
MP>ZH7JE&@V(FXN9$]H4T++W0G>_47(7";83<8L:@*NDP#0K=5\2XK-1C-TAU
MZF?#$?!>&R.LBS@1O.QVA,Y/3HW"?'0KH9K;=/?R$ '7[H(:5H?K_::[U5[-
MNV^#>_ ':PA@ ]?IY.>/&69$NF^[E^B:=,<5+J)UZ;'")PIY-L#^QD&I_0L'
M&#YZUO\"4$L#!!0    ( ,> !U>1ZW0D!0,  ) &   9    >&PO=V]R:W-H
M965T<R]S:&5E=#$P+GAM;)55VV[;2 S]%4(%VI? <NPT6V1M TG:15N@BZ#=
M;I['$B41G8MVAK*;OR\YLK4)D!CHBV:&XCD\Y(C4:A_BC]0A,OQTUJ=UT3'W
M5V69J@Z=2;/0HY<W38C.L!QC6Z8^HJDSR-ER,9]?ELZ0+S:K;+N+FU48V)+'
MNPAI<,[$AQNT8;\NSHNCX2NU':NAW*QZT^(WY._]7913.;'4Y- G"AXB-NOB
M^OSJYD+]L\._A/OT: ^:R3:$'WKX5*^+N0I"BQ4K@Y%EA[=HK1*)C/\.G,44
M4H&/]T?VOW+NDLO6)+P-]IYJ[M;%NP)J;,Q@^6O8?\1#/F^5KPHVY2?L1]_E
MO(!J2!S< 2P*'/EQ-3\/=7@$>/<28'$ +++N,5!6^=ZPV:QBV$-4;V'334XU
MHT4<>;V4;QSE+0F.-[?!.6*I,B<POH;;X)E\B[XB3*N2)80ZEM6![F:D6[Q
M=PE?A*!+\,'76#_%ER)MTK<XZKM9G"3\//@9+.=GL)@OEB?XEE.^R\RW?('O
M[\#/YS7"+IZ':6M<I=Y4N"[DVT\8=UAL7K\ZOYS_>4+4Q23JXA3[[U_":;KE
M#/[I4%A<;_P#4#J#)@8'+-T$'/)Z!N1WP>ZPE@U88FJ-MHG:*SO4$A[0[R@&
MK[J,A<H:<J.^2O1%Z2>H*?6#%%11P!+3:Z>(;QAB0@@-;(<DZE*:P7U'%H%8
M](@;0Q]2HJV8# M4C$=YF-AL+:4N,TIWD32?N+DP>%9.2V9+(OE!>H4[&0VI
MEQY7:'4L'$].-*H[YL1=$&$1K5#6"K'8BN ^A@I1/<3;&2_S2--6K1)0=82>
MO(X1[K)>T=.V4;!/E&FYTU!U3Z/+Z(1]1V*6,#O*\ZPS8Q6VB%X"UG(A>[(V
MVSJS$U+0K".).%/O4,N)3:-YAK'4A^M]DZ A;^13T31"(KW%V7,?9?EH2CB,
M;9Z%2>_*\S@P)NLT;J_'*?._^SBKOYC8DD]2O$:@\]D?;PN(X_P;#QSZ/'.V
M@66"Y6TGOPR,ZB#OFR!]>#AH@.DGM/D%4$L#!!0    ( ,> !U=54!83W0<
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
M_,\IV&4,\6:%/R>/2AXE^7V8(%$1Q]2(8AR+B3+A8?K]I?($(R29$AQ?>""
MA$*0TQBJS0,>)\&",^)94? <F@[!FPR1 FH(*PZSOT4G3\'&7A1E4'B390R!
M^"SAK*3$S2B[#Q9+4^0^!\?C$!-YE -&\?]IY+E7Z<V]KQAHR'O_K88:*%ZJ
MQ@\:R^SR.>AR_ IRMWS\EO2;,'L\PJ!E[K U6.?I"N^@_OO,>.'TP7\3V6J'
M4N"'C11X\*(%N+_3VLT7=,#RD>SB/U!+ P04    " #'@ =7M-;D$@($  !Q
M"0  &0   'AL+W=O<FMS:&5E=',O<VAE970Q,BYX;6R=5G]OVS80_2H'%2U:
M(+!^.'&SQ#;09!N: >V"N%O_IJ23Q98B5?(4V_OT.U*RZJR.-PPP+)*Z>_>.
M]WC4?&/L5U<C$FP;I=TBJHG:JSAV18V-<!/3HN8WE;&-()[:=>Q:BZ(,3HV*
MLR29Q8V0.EK.P]J]7<Y-1TIJO+?@NJ81=G>#RFP641KM%Q[DNB:_$"_GK5CC
M"NF/]M[R+!Y12MF@=M)HL%@MHG?IU<VYMP\&?TK<N(,Q^$QR8[[ZR5VYB!)/
M"!46Y!$$/Q[Q%I7R0$SCVX 9C2&]X^%XC_YKR)USR87#6Z,^RY+J170908F5
MZ!0]F,U['/*Y\'B%42[\PZ:W3:<1%)TCTPS.S*"1NG^*[; /!PZ7R3,.V>"0
M!=Y]H,#R9T%B.;=F ]9;,YH?A%2#-Y.3VA=E19;?2O:CY9TN3(/P26S1S6-B
M1+\>%X/W3>^=/>,]@P]&4^W@%UUB^=0_9B8CG6Q/YR8["?A;IR<P3<X@2[+I
M";SIF-XTX$V?P?MHZ'A>O=OY<3=_$JY<*PI<1"QUA_81H^6K%^DLN3Y!ZGPD
M=7X*_5_W_+3WQ00^U0BWIFF%WKUZ<9FE;Z\=8%5A4#B0V((5G#=LT"*(MK5F
M*UG J';P.DLGTS<O0>@2>)B\!#[80 SHL#"\^*T3EM""J4(->L,DR\[X"+JV
M#Z%V9V'=@Z7?P<X/P.06FEX:Z*4!7%@<"_L,Z/'$*BS1"@6RW[60'5)GM1NC
M94GZ$P^LZ=9UP U6.Q36@> M<%W^A8, &<"MX%,D0D?(=\'[3G.^FB,\X"/J
M#F'%]98%PFO/(4NN[QY6891>OYG YUHJ!$E\"'>0([3&.9GS$M6"0#"WLNL;
M3F$Z58(IBL[RH:9ZGZNG04<2[;3E$JRU_(OWRR>0H\9*$N? /PW<4L,.<&5X
MQJ0.DSEC/IJ[*/=+@M)P\;5A.IID(5LN/0]W(,HOW%&\B>OI;@)%YL4]C#>8
MZ7N96,F;4=1"KW'/M3=Q/C;?!S:$Y)F%BN/K(CBP>F1(G(T.\IO 1P..!'5>
MDK5@A>:(FLE3+PW?FYG<4Z]3Y:\DGXFUZ^4R('MW)1M)>VKZ*-J/2CDAKXU4
MBFFVDB7$>"ML"9N<ST9Z,>CX &GV7[3LR>+_5;)%?\F>$/.CL-)T^RBBH]I8
MKHAO!%Y^'E_YOD!0*.-X"X%+*4VHP.\%&9_:- VIS9[P!]G+B95L63S<1CJN
MG/UG?&_Y-/8N)':0;]M9/C#H0@?0![KP=C_LSE#H(Z*9'&O#\<$UV*!=A\O>
M^7.HJ;\1Q]7Q>^)=?XU^-^\_1CX(NY9<%X45NR:3MQ<1V/Z"[R=DVG"IYH;X
MB@[#FK^)T'H#?E\9OGF&B0\P?F4M_P902P,$%     @ QX '5SO01D+@ @
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
M\*WDNV2 ]_,6E]'U)@78?GV=_@]02P,$%     @ QX '5RL@@3[]#0  XB8
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
M_A.^;EQU(YE)W;L$=(P[T]Q8[QK2BV!>:5NGH=81<:%R8#QHNX16]I8,I=2
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
M_'O@NW0 WV_:-FXVR<'V'X[)_U!+ P04    " #'@ =7'/**C3X&   )*0
M&0   'AL+W=O<FMS:&5E=',O<VAE970Q.2YX;6RMFO]OFS@8QO\5E#N=-NFV
M^ NV<2^-U :FVTF;IG6]^YDF;HJ60 :DW:3[X\^0%()Y\1K.OZP)>=['>?$S
MFP]A]I3E7XL'I4KO^W:3%I>3A[+<74RGQ?)!;>/B;;93J?[D/LNW<:G?YNMI
ML<M5O*J+MILI08A/MW&23N:S^MBG?#[+]N4F2=6GW"OVVVV<_[A6F^SI<H(G
MSP<^)^N'LCHPG<]V\5K=J/)V]RG7[Z:-RRK9JK1(LM3+U?WEY I?1+0NJ!5_
M)^JI.'GM5:W<9=G7ZLW[U>4$5=](;=2RK"QB_>=1+=1F4SGI[_'M:#IIQJP*
M3U\_N[^KF]?-W,6%6F2;?Y)5^7 Y"2;>2MW'^TWY.7OZ4QT;8I7?,ML4];_>
MTT'+V,1;[HLRVQZ+]3?8)NGA;_S]>")."O!0 3D6$+/ 'RB@QP+ZTA'\8X'_
MTA'8L:!N?7KHO3YQ85S&\UF>/7EYI=9NU8OZ[-?5^GPE:164FS+7GR:ZKIQ_
M5H\JW:L++TR*>+W.U3JN)S"[]XX?>:]"5<;)IGCMO?%N;T+OU:^O9]-2CUTY
M3)?'<:X/XY"!<:CW(4O+A\*+TI5: ?6AO9Y;ZJ>ZYZ9Q\MSX-;$:_K5/WWH4
M_>X11"CP?18O+R=0._]O]&CTZ)V309L4T-K/MZ< FM9#(:\+JU7G<1X@AB3%
ML^GCZ>GJZZ1NC<J@JPO[.LQ%@#CC76$$" -",))^(^STZC>]^M9>;S^^_Q*%
MWLV7JR_1#=2QM;Q:N"^*7;Q4EQ.],A<J?U23^6^_8([^@%+DTBQT:18Y,NO,
M 6OF@(W-VZ&0G4P[%_(0\T[>^CHAB"2^,/+6UV$J!:(^,O(&")DO*2,<SAMO
M>N767C]FZ9M;,&C6NG.#YM(L=&D6.3+KG'S1G'PQ-FBB/]^$!1))(VB03OJ8
M&0M@V->1 ".*S74-T DB& _@F 5-IX&UTZN]OE3(JJLNJ%EK[;E1<VD6NC2+
M')EU)D V$R#'1DWVIMR74G#D&U$#=!PC3LPUK:_#"/D!%\8B&?6%DC'._8$M
M%*/VJA'];%&+K8&SUY^;.*=NH5.WR)5;=R9.KM_QV-@=*T^GGR)&J9FG!2#T
M?4R$,-<X0,@%Q3(PDAP!PJ#*'4,#R2-MO\3:[[NX*%6J<K!A:^G9H7/I%CIU
MBURY=2>AQ04\FA>.E9T+,\HQQM0,75^HR4)R3,S0]868$:RO"LVM%5)R@JG.
MW4#L6FC =FIXCIWWK_=3@+!;G1U#IPCAU"URY=:=E)8B\&B,P !'8"I\P<T8
M@L#!A9!F# % ($PC!Z%F#"'FT/NN1 /7>+AE"6R'B9,8#G.%W>/L_#DE"Z=N
MD2NW[FRT<(%'TP6&L(%03GM[+R3D)*#4S!\ #CP(-,J:\8.$C+.3H;O]MHB!
M[8QQDCX[;MA]SDZ@4^!PZA:Y<NO.2,L<>#1T8(@ZF*2!>><.$C*& I.$0T H
M)6?,O$R,(*'/-/,0.(&DY0YBYX[N^F='$+O5N2%TZA8Z=8M<N74GI440,AI!
M2)\#B(^PH.;M/$!(=08#<W4+ 2'3V[#>7XT0 D(N6. S.A#"%D&('4&NBD)M
M[S8_O.C;/MEM55J"K3N%$:=NH5.WR)5;=SI:&"&C883T@8 ',L"!F;Z^3NJM
M.N!F^" 4X410\V8R("0(">[+@?"U($+L(-(/WTN0Q&YZ=AB=(HE3M\B56W=Z
M6B0AHY&$ *3!]+9H$@F@DY3XW/PE#=!AW]>D+<PP D)).<<#.$):'"%V' '#
M. PF=K>S4^@43)RZ1:[<NO/2@@D9#2:D3P>4$?/.\0*286HNG"$@PP1S\V9/
M!.A$]>/(0 !;(B$_^=4#"J"=3>R.9X?0*9LX=8M<N77GIF43,II-2!\0:-"[
MD;( 9*R_>X> +* 8F50"R+2(LP$HH2V44#N4#*V"=CRQFYZ;0Z=NH5.WR)5;
M=WI:/*&C\>18R3M;,F;28(D%H).(RMZ6#.BP+R0G!DI'D% B)J5YCV9Z\FC7
M5N7K^IFZPEMF^[0\/-_3'&V>V[NJGU8SCE_CBP4&CH?X(CH\E=?:'QX2_!#G
MZR0MO(VZUT.AMT+_S\D/S]T=WI39KGZP["XK==#KEP\J7JF\$NC/[[.L?'Y3
M#= \_3C_#U!+ P04    " #'@ =7W .(P+8"   -"   &0   'AL+W=O<FMS
M:&5E=',O<VAE970R,"YX;6RM5EUOVC 4_2M6-DVM5)K$=A)@$&FEFM9)DZI6
M;9_=< &K29S9!KI_/]NA40"7]6$OQ!_WG'O.3:[-9"ODBUH!:/1:E;6:!BNM
MFW$8JF(%%5.7HH':["R$K)@V4[D,52.!S1VH*D,<16E8,5X'^<2MW<I\(M:Z
MY#7<2J365<7DGRLHQ78:Q,';PAU?KK1="/-)PY9P#_JAN95F%G8L<UY!K;BH
MD83%-/@6CV=#&^\"'CEL56^,K)-G(5[LY&8^#2(K"$HHM&5@YK&!&92E)3(R
M?N\X@RZE!?;';^S?G7?CY9DIF(GRB<_U:AH, S2'!5N7^DYL?\#.3V+Y"E$J
M]XNV;2Q- E2LE1;5#FP45+QNG^QU5X<>(*;O / .@#\*(#L <49;9<[6-=,L
MGTBQ1=)&&S8[<+5Q:..&U_8MWFMI=KG!Z?RFWD"MA>2@QJ@W06?7H!DOU3D:
MH(?[:W3V^7P2:I/1XL)BQW[5LN-WV'^NZTM$H@N$(TP\\-EI^#44!AX[.-Z'
MA\9G9Q9W9K'C(^_R.4L^'RV0^H&VE<:J805, ],K"N0&@OS+ISB-OOI<_2>R
M/8^D\TA.L>=W;&N^#PV2L])GM$6G#FU;?)-3FJ9#G$["3=^#-RZ*LKB+VY-'
M.WGTI+PGT]0#7@\:*0I0WE?1$B2]S'A$1B0A!PH]<1G-*,[\"I-.87)2X7=>
M<]-/<[048NX5F!PG3LDP2NF!0$]<0FA&L%]@V@E,3PKL=>D%6DKAKV)ZE#R.
M(DHQ/2SC<>#(%!&3R*\RZU1F)U4^LG+-='O6NV_<JS([2CY(L1$:'8C\=]R>
MR&$G<OCQ4M:@?1*'1XTPHI@<U]$3%^/XN(YA[["V%^4O)I>\5JB$A4%&EYEQ
M*=O+IYUHT;CS^UEH<QNXX<K<UR!M@-E?"*'?)O9*Z/X!Y'\!4$L#!!0    (
M ,> !U=W&U_P<P@  +,X   9    >&PO=V]R:W-H965T<R]S:&5E=#(Q+GAM
M;,6;_6^C.!K'_Q647:UVI7;B-PSTVDJ=8.OF='LWFFIV?Z:)VZ(ED 6GG?[W
M9T@:$MMC4X;J?FE#\GT>\WQMC#^\7#Y7]5_-HQ R^+8NRN9J]BCEYF(^;Y:/
M8ITU'ZJ-*-4O]U6]SJ3:K!_FS:86V:H+6A=S! "=K[.\G%U?=M]]KJ\OJZTL
M\E)\KH-FNUYG]<M'453/5S,X>_WB2_[P*-LOYM>7F^Q!W KY=?.Y5EOS0Y95
MOA9EDU=E4(O[J]D-O. $M &=XH]</#='GX.VE+NJ^JO=^+2ZFH%VCT0AEK)-
MD:E_3V(ABJ+-I/;C[WW2V:'--O#X\VMVWA6OBKG+&K&HBC_SE7R\FL6S8"7N
MLVTAOU3/_Q3[@L(VW[(JFNYO\+S7@EFPW#:R6N^#U1ZL\W+W/_NV-^(H0.6Q
M!Z!] -(#R'<"\#X #VV![ /(T!;"?4 X-(#N VCG_<ZLSNDTD]GU95T]!W6K
M5MG:#UUW=='*X+QL1]:MK-6ON8J3U[?B08T3&7P1FZJ6>?EP$=RJT;O:%B*H
M[@/CY^#NY?#EKZF065XTOP7GP=?;-/CUY]\NYU+M5)MZOMSOP,?=#J#O[  .
M?J]*^=@$K%R)E24^=<=31_Q<F7%P!+TZ\A$Y$_YK6WX(,#@+$$#8LC^+X>'(
M5LZ/M<Y^K'7N#D_%4H5#6_B)E_@PNG"7CWPGWW_4U-ADA6ALXV(72KO0=@)\
MNHY!"!(,+^=/QWZ;ND1Y@Y/X5)>:.DBC&-"0G@J911@C!$%"3H7<65P[YU\T
MFVPIKF9J4F]$_21FU[_\!"GXA\,Z<K"..*U+A4JZS+-V_K6YYXP>OF\[BZ=,
MENZ2A4?V4JC<C;1>L,@(B(G6JWRB73OI@_#0!Z&S#VZ6RVI;RD:=0I<B?\KN
MU*1X'OQ;-$V0%>J<G)5+T;33Y,^0T#, 0)"5*[5!0;MQIL*:C>A.G<6+K0]#
MPX(P 80 _0AP[N5;NV=@HVS*1GEH''(DB4*(^T%QTD'TT$'4V4&?RB=U(JKJ
M7#1G02FDS61JU)L0A!'!FLG.EMYJ\L!&V92-<DNCZL!#&-A-C@XF1]Y)?%.K
MM6PM7\Z"39&I4W\[SL7?VWS3+@1LKD?&OD"UV$T2K,VQ"V?;;[5]:*MLRE9Y
M9)Y/8$QAE&"[\?'!^-AI/,\:*4I1V_QU1KYU^I\R63IE,C9E,CY1LI.^3 Y]
MF8Q?"27&L(TPA1#J4Y2I4RNF1)U=M960J8,A4N,1Z2LABY BB D)M;.PL[B1
MUD'0,PKXH;70/ORX#A0A&B6:?S9=#&.BG?I2BRXD(8::*\RFHYC&6G]P=WEC
M[3M"/.BT[Y77VBD\ZR!.3>?WN77>WJ<Z+NE<K8PQ@K%NIJDD21+JR_?4FK$=
MCC#1[325$.,08'U-Z*YWK)^H]Q-Y_"R*UL7V)'BS4E">-[(U]DD$[-M&E(W]
M*-]G/2X/Z)YZ):E?POP2[JYPK(,]%D(W%WXJI5!Y99"7RVHMK&YAOUM>2>J7
M,+^$NZL9ZU9/@M"-@HMLD\NL"$0[N%:YW-;?&6 F4A% *3*F05.'D#%KI199
M1!!-C%G0U,$HQH3J+KX'RL&>Y>#_%^:@!:Q"@DD4Z?:;0HHQ0,08O ,SLJ$9
MN=NBL5W0TQK\<5R#)L5$B:+3T!C%IE -.FBNAH9F9$,S<G>98VWL>0R^ Y!!
MDXT4@2<1,'RU"'%"DUB_WC8T(QN:D;OK'NMKCUO0S5O_E8^B#FZ:1DC[_!K[
M3TE>2>J7,+^$NTL9:U5/,]"-,ZU)Z[OB)6#.,3<1-NR]G3);.FDV-FDV/E6V
MT_L?/6XA-VXY6169S$/C)#;PP*)+*(YB;5606G0PI"C"^D%A$2( (DJTZ8:[
MJQOK7D];R$U;/EA%)N5@$&&D^V>184RQ;I\IHVK]HE_OLLEHI%\/X.[2QEK7
M@Q7R@=5P4$4FY,01I%2WT93!! *H4ZI%A]38BO6KXA8=:6]&Z?.SN]*Q3O:
MA=R -1)1D1^Z_)+4+V%^"7=7.-;!'KJ0&[H&("HRP<=PRRM)_1+FEW!W-6/=
MZN$*N>%J**(BDU0,R[R2U"]A?@EWES36LAZ&D!N&WIM'D4DSF(($Z3=@++H0
MPB2.=-.'Y6,#\W&W/6/M[R$*N2%J"(LBR_TD$F,0&Q[:;CQ%.*+&:69@1C8T
M(W>7.=;&GIF0FYE&L2@R^08B@@#6;WC8A)A&4+^RGP[-R(9FY.ZZQ_K: Q9R
M Y:/19%YZ\:82+V2U"]A?@EWES+2*MSC"G;CRM>RG2^7F12K8%'5FTHM=*SG
M:W>>M^+HI-G22;.Q2;/QJ;*=]F\/5-@-5.Z'R$RPT8\#OR3U2YA?PMUUC/6I
MIR?LIB<?>&(+XE"=%!<658B089A%A5&L>V:!K_91(]VW]V E?/2,HH^5AE,G
M]@.27Y+Z)<POX>ZRQMK6 Q)V ])(Q,0FRYS36"T0]>O0-B%)H@CK5Y!L0HA@
M8BB939DD$= / NXN?:RU/4UA-TT-8$]L\@V"D?[<QL(F ^:3LY;[1PCK=_*9
M18;C$.O>O0=6X1ZKL!NKAI(H-C'E/$QB8!S.IH[&!.ET9)'!*-3-8189QCC4
MV<A=XU@/>S;";C9Z;S3%)MP8MGLEJ5_"_!+NMF*LU3T_83<_#<%0[+_OY)>D
M?@GS2[B[G+%V]5B$_8_1O1DWL>4Q-P!BF.C7W&U"1$$8ZK>4AV9D0S-R=]UC
MWS7H&8JX&<J'F_OPDP>X*0I1K)]P;$*@9/I,F [-R(9FY.X2WVKA_.B=JK6H
M'[JWWYJ@FQAW+\ <OCV\87?3O5>F??\17BR@Y?L47K#=^W-]^MWK?+]G]4->
M-D$A[E53X$.DAD^]>T-NMR&K3?=&UUTE9;7N/CZ*;"7J5J!^OZ\J^;K1-G!X
M3_'Z?U!+ P04    " #'@ =7O;X)2O\"  ")#P  #0   'AL+W-T>6QE<RYX
M;6S=5VUOFS 0_BN(3E,G326$E84U1-J0*DW:IDKMAWVKG&"()6,S8SK27S\?
M)N2EOJKKAZT;48I]C^^YY\X';N:-WG!ZO:94>UW%19/Z:ZWK#T'0K-:T(LV9
MK*DP2"%51;29JC)H:D5)WH!3Q8/I9!('%6'"7\Q%6UU6NO%6LA4Z]:>CR;.W
MSWGJA_$[W[-TF<QIZM^>OO[12GWQRK/WD[<G)Y/;-Q?']M,>>.,'3M+S)Y">
M37!>@_74P9##8EY(L4LE\JW!Q"85]>X(3_V,<+94#+P*4C&^L>8I&%:22^5I
M4T,C)@1+<V_AT,Z@O -/Q814?6P;P?Y=#LN/@.T,!#+.#VH-AL6\)EI3)2[-
MI%_<&Q] WC"^V=1&8:G()IR>^SN'_F:"+*7*J1K#A/[6M)AS6H <Q<HUW+6L
M P"UEI49Y(R44I!>P]9C&!C:%>7\&GKO>W' W15[NSJ!/17CT @:AI;&3H!_
MG\UR[]'.GD7KU>Q.ZD^MR4;T<^@5>J5HP;I^WA5C?(P]Q-E)7?/-1\Y*45&;
M^Y,#+N9DZ^>MI6+W)AITRLH8J/*].ZHT6^U;?BI2W]!.;[NI*W#-TW]0\Y^M
M<TD%583OBS:M_Y*K_&S%T?N_);E_J1P+=FH<SI.7+O+\18H,AG?EW@OYX'4\
M6CTX]E+_&QRQ?!?46[:,:R:&V9KE.14/WLJ&7I.E^3_C@-^LSVE!6JYO1C#U
M=^.O-&=ME8RKKJ 0PZK=^ ND%\;CF6MB,9'3CN;9,%7ELA]Z9F"B#A<X'".7
M_>5&,!^+N1' L#B8 LS'>F%Q_J=\9F@^%L.TS9S(#/69H3[6RX5D_0>+X_9)
MS.7.-$FB*(ZQBF:94T&&U2V.X>MFP[2!!Q8'(OU>K?'=QCOD\3[ ]O2Q#L$R
MQ3L1RQ2O-2#NNH%'DKAW&XL#'M@N8+T#\=UQH*?</E$$NXIIPYY@'$D2#(%>
M=/=H'"/5B>'CWA_L*8FB)'$C@+D51!&&P-.((Y@"T( A4=2?@T?G4; ]IX+=
MC^_%+U!+ P04    " #'@ =7EXJ[',     3 @  "P   %]R96QS+RYR96QS
MG9*Y;L,P#$!_Q=">, ?0(8@S9?$6!/D!5J(/V!(%BD6=OZ_:I7&0"QEY/3P2
MW!YI0.TXI+:+J1C]$%)I6M6X 4BV)8]ISI%"KM0L'C6'TD!$VV-#L%HL/D N
M&6:WO606IW.D5XA<UYVE/=LO3T%O@*\Z3'%":4A+,P[PS=)_,O?S##5%Y4HC
ME5L:>-/E_G;@2=&A(E@6FD7)TZ(=I7\=Q_:0T^FO8R*T>EOH^7%H5 J.W&,E
MC'%BM/XU@LD/['X 4$L#!!0    ( ,> !U?_)8$^CP(  -0.   /    >&PO
M=V]R:V)O;VLN>&ULQ9==;]L@%(;_"O)5=S/'SD?;J*FT-?N(-&U1TO4V(N;8
M0<$0 6Z[_OH=[%G#ZX9V@W)E \?'#^]!O'#SI/1QK]21/-="FD5RL/8T3U-3
M'*"FYJTZ@<214NF:6FSJ*C4G#929 X"M19J/1K.TIEPFMS=]KK5._8:R4%BN
M)':ZC@<.3^;WN&N21V[XG@MN?RR2]EU 0FHN><U?@"V244+,03U]5IJ_*&FI
MV!9:";%(LF[@ ;3EQ:ONK8.\IWO3]EBZWU $622S$28LN3:VC6CS4V1\! SN
M6HU5'[FPH)?4PB>MFA.7E4N#LTB]:;0Z],].Q+G^'QE56?("EJIH:I"VTU&#
M<(#2'/C))$32&A9)'T*H9.2#M"@26<DN%<:ZF>*O5ZR;M45<3T,]YSB@5ZP%
MCP=YIR0#:8 1?#-*<(8<C+RG@LH"B >9!R#S,T+N<@]R'( <GP5RZW#P4P]R
M$H"<G!%RH.0T #D])^38@YP%(&?GA)QXD)<!R,NXD.^*0C6X\\B*K!&QX& \
ML*L V%5<L TW1]-NC-]QF]$6?<@.X:X#<->Q2UO7W+J@#A$+["0$^8=^V2BT
M;X\B*PB/(!OP<8(V$ME'5K)0-9![^CR4*.0:663;6$F4R.+18X@4\H@LLDEL
MH6J/!!LX*>T6E0\6\H4LLC'\9:<@%_W;&Y\R9 Q99&?XM>AW9,D-K2H-51M#
M5$G<D(\9LH8LLC=X"V]'O :YP&.J&&"&S"&+[ ZO%N..;#$M:P0X17W,D%5D
ML;TB5/3!F24+F486V37^7?0EH+_Y)^F0;^21?2-8](&:><A/\NY"U=^B&)1<
M ON*OS#8CS>Z8JV)>W0N,)FZVI2-$'?8]TU^493UE[+^0GG[$U!+ P04
M" #'@ =7[LU(.R8!  !F#0  &@   'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR
M96QSS=?-CH(P$,#Q5R%] (>IBKH13WOQ:GR!!H>/")2TW:AOOP0/.&8/>S&=
M$VD)TW]Z^"7L3]2:T-C>U\W@DWO7]CY7=0C#%X O:NJ,7]B!^O%-:5UGPKAT
M%0RFN)J*0*=I!NYUACKL7V<FY\= _YEHR[(IZ-L6/QWUX8_!<+/NZFNBH)*S
M<16%7,&]G;<]3 ]<C)-5<KSDRATOJ"!VD&9!.G[0D@4MXP>M6- J?M":!:WC
M!V4L*(L?M&%!F_A!6Q:TC1^T8T&[^$&8<AE3 4EO6 O0&CG7*,!KY&"C +&1
MDXT"S$:.-@I0&SG;*,!MY'"C +F1TXT"[$:.-PK06W.]M0"]-==;?U)O'QXM
M^;GGN>;G?Y+J,'Y+\_'3\KGY=@D3SL!^JPZ_4$L#!!0    ( ,> !U?UX!!.
M90$  'L.   3    6T-O;G1E;G1?5'EP97-=+GAM;,V7RT[#,!!%?R7*MFI<
M!R@/M=T 6^B"'S#)I+$:/^1Q2_OW3-*'!"H159&83:S$,_=<>Z0K9?*V]8#)
MQC06IVD=HW\0 HL:C,+,>;"T4[E@5*37L!!>%4NU )&/1F-1.!O!QF%L-=+9
MY DJM6IB\KRASZB=G:8!&DR3QUUARYJFROM&%RK2OEC;\AMEN"=DU-G58*T]
M#J@@%2<)[<[/@'W?ZQI"T"4D<Q7BBS)4)3:-P+AM +-^B1,>757I DI7K RU
M9.@#J!)K@&B:;"<ZZ"='NF'8/>7%_$ZF#TB5\^ \TL0"G(\[C*3M'GH2@A!U
M_Q&/1)*^^'S03KN$\I=LNMX/%Y;=/%!TR^5W_'7&1_TS?>1,?%PQ\7'-Q,<-
M$Q]C)CYNF?BX8^+CGHD/.>)BA$NB2BZ1*KEDJN02JI)+JDHNL2JYY*KD$JR2
M2[+F7)(U_\]D?7=N^=>_0^V:&:7M@2^Z?\[9)U!+ 0(4 Q0    ( ,> !U<'
M04UB@0   +$    0              "  0    !D;V-0<F]P<R]A<' N>&UL
M4$L! A0#%     @ QX '5R =Y*7N    *P(  !$              ( !KP
M &1O8U!R;W!S+V-O<F4N>&UL4$L! A0#%     @ QX '5YE<G",0!@  G"<
M !,              ( !S $  'AL+W1H96UE+W1H96UE,2YX;6Q02P$"% ,4
M    " #'@ =7"13!1=,%  #('@  &               @($-"   >&PO=V]R
M:W-H965T<R]S:&5E=#$N>&UL4$L! A0#%     @ QX '5W!:HWFX!@  !1L
M !@              ("!%@X  'AL+W=O<FMS:&5E=',O<VAE970R+GAM;%!+
M 0(4 Q0    ( ,> !U<Z:$K-!@,  !(*   8              " @005  !X
M;"]W;W)K<VAE971S+W-H965T,RYX;6Q02P$"% ,4    " #'@ =7ZW/^J!T%
M   J%@  &               @(% &   >&PO=V]R:W-H965T<R]S:&5E=#0N
M>&UL4$L! A0#%     @ QX '5^VE)@D3"0  WED  !@              ("!
MDQT  'AL+W=O<FMS:&5E=',O<VAE970U+GAM;%!+ 0(4 Q0    ( ,> !U<&
M&^GUQ (  .,)   8              " @=PF  !X;"]W;W)K<VAE971S+W-H
M965T-BYX;6Q02P$"% ,4    " #'@ =7(L0&&<,%  #C%P  &
M    @('6*0  >&PO=V]R:W-H965T<R]S:&5E=#<N>&UL4$L! A0#%     @
MQX '5[PX;VL$!@  9@X  !@              ("!SR\  'AL+W=O<FMS:&5E
M=',O<VAE970X+GAM;%!+ 0(4 Q0    ( ,> !U<Z:DZD]@,    )   8
M          " @0DV  !X;"]W;W)K<VAE971S+W-H965T.2YX;6Q02P$"% ,4
M    " #'@ =7D>MT) 4#  "0!@  &0              @($U.@  >&PO=V]R
M:W-H965T<R]S:&5E=#$P+GAM;%!+ 0(4 Q0    ( ,> !U=54!83W0<  # 3
M   9              " @7$]  !X;"]W;W)K<VAE971S+W-H965T,3$N>&UL
M4$L! A0#%     @ QX '5[36Y!("!   <0D  !D              ("!A44
M 'AL+W=O<FMS:&5E=',O<VAE970Q,BYX;6Q02P$"% ,4    " #'@ =7.]!&
M0N "   K!@  &0              @(&^20  >&PO=V]R:W-H965T<R]S:&5E
M=#$S+GAM;%!+ 0(4 Q0    ( ,> !U>Q+$LSI@4  (D-   9
M  " @=5,  !X;"]W;W)K<VAE971S+W-H965T,30N>&UL4$L! A0#%     @
MQX '5RL@@3[]#0  XB8  !D              ("!LE(  'AL+W=O<FMS:&5E
M=',O<VAE970Q-2YX;6Q02P$"% ,4    " #'@ =73JFR9B($  !O"P  &0
M            @('F8   >&PO=V]R:W-H965T<R]S:&5E=#$V+GAM;%!+ 0(4
M Q0    ( ,> !U<@F;^@E@(  *,%   9              " @3]E  !X;"]W
M;W)K<VAE971S+W-H965T,3<N>&UL4$L! A0#%     @ QX '5RB*YP0F!0
M? P  !D              ("!#&@  'AL+W=O<FMS:&5E=',O<VAE970Q."YX
M;6Q02P$"% ,4    " #'@ =7'/**C3X&   )*0  &0              @(%I
M;0  >&PO=V]R:W-H965T<R]S:&5E=#$Y+GAM;%!+ 0(4 Q0    ( ,> !U?<
M XC M@(   T(   9              " @=YS  !X;"]W;W)K<VAE971S+W-H
M965T,C N>&UL4$L! A0#%     @ QX '5W<;7_!S"   LS@  !D
M     ("!RW8  'AL+W=O<FMS:&5E=',O<VAE970R,2YX;6Q02P$"% ,4
M" #'@ =7O;X)2O\"  ")#P  #0              @ %U?P  >&PO<W1Y;&5S
M+GAM;%!+ 0(4 Q0    ( ,> !U>7BKL<P    !,"   +              "
M 9^"  !?<F5L<R\N<F5L<U!+ 0(4 Q0    ( ,> !U?_)8$^CP(  -0.   /
M              "  8B#  !X;"]W;W)K8F]O:RYX;6Q02P$"% ,4    " #'
M@ =7[LU(.R8!  !F#0  &@              @ %$A@  >&PO7W)E;',O=V]R
M:V)O;VLN>&UL+G)E;'-02P$"% ,4    " #'@ =7]> 03F4!  ![#@  $P
M            @ &BAP  6T-O;G1E;G1?5'EP97-=+GAM;%!+!08     '0 =
+ ,('   XB0     !

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>36
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.23.2</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>115</ContextCount>
  <ElementCount>127</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>14</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>3</UnitCount>
  <MyReports>
    <Report instance="d440811d10q.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/20230630/role/idr_DocumentDocumentAndEntityInformation</Role>
      <ShortName>Document and Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="d440811d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>000020 - Statement - Condensed Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets</Role>
      <ShortName>Condensed Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="d440811d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>000030 - Statement - Condensed Consolidated Balance Sheets - Parenthetical</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>Condensed Consolidated Balance Sheets - Parenthetical</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="d440811d10q.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/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited</Role>
      <ShortName>Condensed Consolidated Statements of Operations (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="d440811d10q.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/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited</Role>
      <ShortName>Condensed Consolidated Statements of Shareholders' Equity (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="d440811d10q.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/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnauditedParenthetical</Role>
      <ShortName>Condensed Consolidated Statements of Shareholders' Equity (Unaudited) - Parenthetical</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="d440811d10q.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/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited</Role>
      <ShortName>Condensed Consolidated Statements of Cash Flows (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="d440811d10q.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/20230630/role/idr_DisclosureAccountingPolicies</Role>
      <ShortName>Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="d440811d10q.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/20230630/role/idr_DisclosureRisksAndUncertainties</Role>
      <ShortName>Risks and Uncertainties</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="d440811d10q.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/20230630/role/idr_DisclosureCommitmentsAndContingencies</Role>
      <ShortName>Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="d440811d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>000110 - Disclosure - Revenue</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenue</Role>
      <ShortName>Revenue</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="d440811d10q.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/20230630/role/idr_DisclosureIncomeTaxes</Role>
      <ShortName>Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="d440811d10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>000130 - Disclosure - Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.chicagorivet.com/20230630/role/idr_DisclosureInventories</Role>
      <ShortName>Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="d440811d10q.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/20230630/role/idr_DisclosureSegmentReporting</Role>
      <ShortName>Segment Reporting</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="d440811d10q.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/20230630/role/idr_DisclosureAccountingPoliciesPolicies</Role>
      <ShortName>Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.chicagorivet.com/20230630/role/idr_DisclosureAccountingPolicies</ParentRole>
      <Position>15</Position>
    </Report>
    <Report instance="d440811d10q.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/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueTables</Role>
      <ShortName>Revenue: Disaggregation of Revenue (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="d440811d10q.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/20230630/role/idr_DisclosureInventoriesInventoriesTables</Role>
      <ShortName>Inventories: Inventories (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="d440811d10q.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/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentTables</Role>
      <ShortName>Segment Reporting: Schedule of Segment Reporting by Segment (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="d440811d10q.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/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails</Role>
      <ShortName>Revenue: Disaggregation of Revenue (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueTables</ParentRole>
      <Position>19</Position>
    </Report>
    <Report instance="d440811d10q.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/20230630/role/idr_DisclosureInventoriesInventoriesDetails</Role>
      <ShortName>Inventories: Inventories (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.chicagorivet.com/20230630/role/idr_DisclosureInventoriesInventoriesTables</ParentRole>
      <Position>20</Position>
    </Report>
    <Report instance="d440811d10q.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/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails</Role>
      <ShortName>Segment Reporting: Schedule of Segment Reporting by Segment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.chicagorivet.com/20230630/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: 3 fact(s) appearing in ix:hidden were eligible for transformation: dei:DocumentTransitionReport, dei:EntityRegistrantName, dei:SecurityExchangeName -  d440811d10q.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 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-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.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/20230630/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 doctype="10-Q" original="d440811d10q.htm">d440811d10q.htm</File>
    <File>cvr-20230630.xsd</File>
    <File>cvr-20230630_cal.xml</File>
    <File>cvr-20230630_def.xml</File>
    <File>cvr-20230630_lab.xml</File>
    <File>cvr-20230630_pre.xml</File>
    <File>d440811dex311.htm</File>
    <File>d440811dex312.htm</File>
    <File>d440811dex321.htm</File>
    <File>d440811dex322.htm</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="412">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>39
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "d440811d10q.htm": {
   "axisCustom": 0,
   "axisStandard": 4,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2023": 412,
    "http://xbrl.sec.gov/dei/2023": 30
   },
   "contextCount": 115,
   "dts": {
    "calculationLink": {
     "local": [
      "cvr-20230630_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "cvr-20230630_def.xml"
     ]
    },
    "inline": {
     "local": [
      "d440811d10q.htm"
     ]
    },
    "labelLink": {
     "local": [
      "cvr-20230630_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "cvr-20230630_pre.xml"
     ]
    },
    "schema": {
     "local": [
      "cvr-20230630.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"
     ]
    }
   },
   "elementCount": 176,
   "entityCount": 1,
   "hidden": {
    "http://xbrl.sec.gov/dei/2023": 8,
    "total": 8
   },
   "keyCustom": 2,
   "keyStandard": 125,
   "memberCustom": 7,
   "memberStandard": 7,
   "nsprefix": "fil",
   "nsuri": "http://www.chicagorivet.com/20230630",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "b",
       "p",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "000010 - Document - Document and Entity Information",
     "menuCat": "Cover",
     "order": "1",
     "role": "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation",
     "shortName": "Document and Entity Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "b",
       "p",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LegalMattersAndContingenciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000100 - Disclosure - Commitments and Contingencies",
     "menuCat": "Notes",
     "order": "10",
     "role": "http://www.chicagorivet.com/20230630/role/idr_DisclosureCommitmentsAndContingencies",
     "shortName": "Commitments and Contingencies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LegalMattersAndContingenciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000110 - Disclosure - Revenue",
     "menuCat": "Notes",
     "order": "11",
     "role": "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenue",
     "shortName": "Revenue",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000120 - Disclosure - Income Taxes",
     "menuCat": "Notes",
     "order": "12",
     "role": "http://www.chicagorivet.com/20230630/role/idr_DisclosureIncomeTaxes",
     "shortName": "Income Taxes",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000130 - Disclosure - Inventories",
     "menuCat": "Notes",
     "order": "13",
     "role": "http://www.chicagorivet.com/20230630/role/idr_DisclosureInventories",
     "shortName": "Inventories",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000140 - Disclosure - Segment Reporting",
     "menuCat": "Notes",
     "order": "14",
     "role": "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReporting",
     "shortName": "Segment Reporting",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000150 - Disclosure - Accounting Policies (Policies)",
     "menuCat": "Policies",
     "order": "15",
     "role": "http://www.chicagorivet.com/20230630/role/idr_DisclosureAccountingPoliciesPolicies",
     "shortName": "Accounting Policies (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630_StGeo-Location",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000160 - Disclosure - Revenue: Disaggregation of Revenue (Tables)",
     "menuCat": "Tables",
     "order": "16",
     "role": "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueTables",
     "shortName": "Revenue: Disaggregation of Revenue (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630_StGeo-Location",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000170 - Disclosure - Inventories: Inventories (Tables)",
     "menuCat": "Tables",
     "order": "17",
     "role": "http://www.chicagorivet.com/20230630/role/idr_DisclosureInventoriesInventoriesTables",
     "shortName": "Inventories: Inventories (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000180 - Disclosure - Segment Reporting: Schedule of Segment Reporting by Segment (Tables)",
     "menuCat": "Tables",
     "order": "18",
     "role": "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentTables",
     "shortName": "Segment Reporting: Schedule of Segment Reporting by Segment (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "Y23Q2",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000190 - Disclosure - Revenue: Disaggregation of Revenue (Details)",
     "menuCat": "Details",
     "order": "19",
     "role": "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
     "shortName": "Revenue: Disaggregation of Revenue (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "Y23Q2",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "E23Q2",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "000020 - Statement - Condensed Consolidated Balance Sheets",
     "menuCat": "Statements",
     "order": "2",
     "role": "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets",
     "shortName": "Condensed Consolidated Balance Sheets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "E23Q2",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:CertificatesOfDepositAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "E23Q2",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryRawMaterials",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000200 - Disclosure - Inventories: Inventories (Details)",
     "menuCat": "Details",
     "order": "20",
     "role": "http://www.chicagorivet.com/20230630/role/idr_DisclosureInventoriesInventoriesDetails",
     "shortName": "Inventories: Inventories (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "E23Q2",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryRawMaterials",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "Y23Q2",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000210 - Disclosure - Segment Reporting: Schedule of Segment Reporting by Segment (Details)",
     "menuCat": "Details",
     "order": "21",
     "role": "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails",
     "shortName": "Segment Reporting: Schedule of Segment Reporting by Segment (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "Y23Q2_StBusnSeg-Fastener",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "E23Q2",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "000030 - Statement - Condensed Consolidated Balance Sheets - Parenthetical",
     "menuCat": "Statements",
     "order": "3",
     "role": "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheetsParenthetical",
     "shortName": "Condensed Consolidated Balance Sheets - Parenthetical",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "E23Q2",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "Y23Q2",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "000040 - Statement - Condensed Consolidated Statements of Operations (Unaudited)",
     "menuCat": "Statements",
     "order": "4",
     "role": "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited",
     "shortName": "Condensed Consolidated Statements of Operations (Unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "Y23Q2",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:CostOfRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "E21",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "000050 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited)",
     "menuCat": "Statements",
     "order": "5",
     "role": "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited",
     "shortName": "Condensed Consolidated Statements of Shareholders' Equity (Unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "Y22Q1",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "Y23Q2",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:CommonStockDividendsPerShareDeclared",
      "reportCount": 1,
      "unitRef": "UsdPerShare",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "000060 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited) - Parenthetical",
     "menuCat": "Statements",
     "order": "6",
     "role": "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnauditedParenthetical",
     "shortName": "Condensed Consolidated Statements of Shareholders' Equity (Unaudited) - Parenthetical",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "Y23Q1",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:CommonStockDividendsPerShareDeclared",
      "reportCount": 1,
      "unique": true,
      "unitRef": "UsdPerShare",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "000070 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)",
     "menuCat": "Statements",
     "order": "7",
     "role": "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited",
     "shortName": "Condensed Consolidated Statements of Cash Flows (Unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:GainLossOnDispositionOfAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000080 - Disclosure - Accounting Policies",
     "menuCat": "Notes",
     "order": "8",
     "role": "http://www.chicagorivet.com/20230630/role/idr_DisclosureAccountingPolicies",
     "shortName": "Accounting Policies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConcentrationRiskDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000090 - Disclosure - Risks and Uncertainties",
     "menuCat": "Notes",
     "order": "9",
     "role": "http://www.chicagorivet.com/20230630/role/idr_DisclosureRisksAndUncertainties",
     "shortName": "Risks and Uncertainties",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "d440811d10q.htm",
      "contextRef": "D230101_230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConcentrationRiskDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 14,
   "tag": {
    "country_US": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "UNITED STATES"
       }
      }
     },
     "localname": "US",
     "nsuri": "http://xbrl.sec.gov/country/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_AmendmentFlag": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.",
        "label": "Amendment Flag"
       }
      }
     },
     "localname": "AmendmentFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_CityAreaCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Area code of city",
        "label": "City Area Code"
       }
      }
     },
     "localname": "CityAreaCode",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CurrentFiscalYearEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "End date of current fiscal year in the format --MM-DD.",
        "label": "Fiscal Year End"
       }
      }
     },
     "localname": "CurrentFiscalYearEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentFiscalPeriodFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Document Fiscal Period Focus"
       }
      }
     },
     "localname": "DocumentFiscalPeriodFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "fiscalPeriodItemType"
    },
    "dei_DocumentFiscalYearFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Document Fiscal Year Focus"
       }
      }
     },
     "localname": "DocumentFiscalYearFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "gYearItemType"
    },
    "dei_DocumentPeriodEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Document Period End Date"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentQuarterlyReport": {
     "auth_ref": [
      "r418"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an quarterly report.",
        "label": "Document Quarterly Report"
       }
      }
     },
     "localname": "DocumentQuarterlyReport",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r419"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as a transition report.",
        "label": "Document Transition Report"
       }
      }
     },
     "localname": "DocumentTransitionReport",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentType": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "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'.",
        "label": "Document Type"
       }
      }
     },
     "localname": "DocumentType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_EntityAddressAddressLine1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name",
        "label": "Entity Address, Address Line One"
       }
      }
     },
     "localname": "EntityAddressAddressLine1",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCityOrTown": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the City or Town",
        "label": "Entity Address, City or Town"
       }
      }
     },
     "localname": "EntityAddressCityOrTown",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressPostalZipCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Code for the postal or zip code",
        "label": "Entity Address, Postal Zip Code"
       }
      }
     },
     "localname": "EntityAddressPostalZipCode",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressStateOrProvince": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the state or province.",
        "label": "Entity Address, State or Province"
       }
      }
     },
     "localname": "EntityAddressStateOrProvince",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r416"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.",
        "label": "Registrant CIK"
       }
      }
     },
     "localname": "EntityCentralIndexKey",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "centralIndexKeyItemType"
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Entity Common Stock, Shares Outstanding"
       }
      }
     },
     "localname": "EntityCommonStockSharesOutstanding",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "sharesItemType"
    },
    "dei_EntityCurrentReportingStatus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Entity Current Reporting Status"
       }
      }
     },
     "localname": "EntityCurrentReportingStatus",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r416"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate if registrant meets the emerging growth company criteria.",
        "label": "Entity Emerging Growth Company"
       }
      }
     },
     "localname": "EntityEmergingGrowthCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityFileNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Entity File Number"
       }
      }
     },
     "localname": "EntityFileNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r416"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Entity Filer Category"
       }
      }
     },
     "localname": "EntityFilerCategory",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "filerCategoryItemType"
    },
    "dei_EntityIncorporationStateCountryCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two-character EDGAR code representing the state or country of incorporation.",
        "label": "Entity Incorporation, State or Country Code"
       }
      }
     },
     "localname": "EntityIncorporationStateCountryCode",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r420"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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).",
        "label": "Entity Interactive Data Current"
       }
      }
     },
     "localname": "EntityInteractiveDataCurrent",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r416"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.",
        "label": "Entity Registrant Name"
       }
      }
     },
     "localname": "EntityRegistrantName",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r416"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.",
        "label": "Entity Shell Company"
       }
      }
     },
     "localname": "EntityShellCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r416"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).",
        "label": "Entity Small Business"
       }
      }
     },
     "localname": "EntitySmallBusiness",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r416"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.",
        "label": "Entity Tax Identification Number"
       }
      }
     },
     "localname": "EntityTaxIdentificationNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "employerIdItemType"
    },
    "dei_LocalPhoneNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Local phone number for entity.",
        "label": "Local Phone Number"
       }
      }
     },
     "localname": "LocalPhoneNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r415"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Title of a 12(b) registered security.",
        "label": "Title of 12(b) Security"
       }
      }
     },
     "localname": "Security12bTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r417"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the Exchange on which a security is registered.",
        "label": "Security Exchange Name"
       }
      }
     },
     "localname": "SecurityExchangeName",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "edgarExchangeCodeItemType"
    },
    "dei_TradingSymbol": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Trading symbol of an instrument as listed on an exchange.",
        "label": "Trading Symbol"
       }
      }
     },
     "localname": "TradingSymbol",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "fil_AssemblyEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Assembly Equipment, during the indicated time period.",
        "label": "Assembly Equipment"
       }
      }
     },
     "localname": "AssemblyEquipmentMember",
     "nsuri": "http://www.chicagorivet.com/20230630",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_AutomotiveMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Automotive, during the indicated time period.",
        "label": "Automotive"
       }
      }
     },
     "localname": "AutomotiveMember",
     "nsuri": "http://www.chicagorivet.com/20230630",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_EndMarketMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the End Market, during the indicated time period.",
        "label": "End Market"
       }
      }
     },
     "localname": "EndMarketMember",
     "nsuri": "http://www.chicagorivet.com/20230630",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueTables"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_FastenerMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Fastener, during the indicated time period.",
        "label": "Fastener"
       }
      }
     },
     "localname": "FastenerMember",
     "nsuri": "http://www.chicagorivet.com/20230630",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_LocationMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Location, during the indicated time period.",
        "label": "Location"
       }
      }
     },
     "localname": "LocationMember",
     "nsuri": "http://www.chicagorivet.com/20230630",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueTables"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_NonautomotiveMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Nonautomotive, during the indicated time period.",
        "label": "Nonautomotive"
       }
      }
     },
     "localname": "NonautomotiveMember",
     "nsuri": "http://www.chicagorivet.com/20230630",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_SegmentOperatingprofit": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net result for the period of deducting segment operating expenses from segment operating revenues.",
        "label": "Segment operating profit"
       }
      }
     },
     "localname": "SegmentOperatingprofit",
     "nsuri": "http://www.chicagorivet.com/20230630",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_SellingAndAdministrativeExpensesUnallocatedCorporate": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and adminstrative expenses",
        "label": "Selling and Administrative Expenses"
       }
      }
     },
     "localname": "SellingAndAdministrativeExpensesUnallocatedCorporate",
     "nsuri": "http://www.chicagorivet.com/20230630",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_UnallocatedCorporateMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Unallocated Corporate, during the indicated time period.",
        "label": "Unallocated Corporate"
       }
      }
     },
     "localname": "UnallocatedCorporateMember",
     "nsuri": "http://www.chicagorivet.com/20230630",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [
      "r181",
      "r182",
      "r183",
      "r184",
      "r216",
      "r266",
      "r299",
      "r314",
      "r315",
      "r363",
      "r365",
      "r367",
      "r368",
      "r370",
      "r383",
      "r384",
      "r395",
      "r398",
      "r401",
      "r404",
      "r444",
      "r453",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [
      "r181",
      "r182",
      "r183",
      "r184",
      "r216",
      "r266",
      "r299",
      "r314",
      "r315",
      "r363",
      "r365",
      "r367",
      "r368",
      "r370",
      "r383",
      "r384",
      "r395",
      "r398",
      "r401",
      "r404",
      "r444",
      "r453",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ProductOrServiceAxis": {
     "auth_ref": [
      "r154",
      "r268",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r298",
      "r386",
      "r399",
      "r403",
      "r421",
      "r440",
      "r441",
      "r445",
      "r460"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]"
       }
      }
     },
     "localname": "ProductOrServiceAxis",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueTables"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ProductsAndServicesDomain": {
     "auth_ref": [
      "r154",
      "r268",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r298",
      "r386",
      "r399",
      "r403",
      "r421",
      "r440",
      "r441",
      "r445",
      "r460"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service"
       }
      }
     },
     "localname": "ProductsAndServicesDomain",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueTables"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [
      "r181",
      "r182",
      "r183",
      "r184",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r265",
      "r266",
      "r299",
      "r314",
      "r315",
      "r363",
      "r365",
      "r367",
      "r368",
      "r370",
      "r383",
      "r384",
      "r395",
      "r398",
      "r401",
      "r404",
      "r407",
      "r439",
      "r444",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [
      "r181",
      "r182",
      "r183",
      "r184",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r265",
      "r266",
      "r299",
      "r314",
      "r315",
      "r363",
      "r365",
      "r367",
      "r368",
      "r370",
      "r383",
      "r384",
      "r395",
      "r398",
      "r401",
      "r404",
      "r407",
      "r439",
      "r444",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement"
       }
      }
     },
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_SegmentGeographicalDomain": {
     "auth_ref": [
      "r156",
      "r157",
      "r311",
      "r312",
      "r313",
      "r364",
      "r366",
      "r369",
      "r371",
      "r374",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r382",
      "r387",
      "r400",
      "r407",
      "r445",
      "r460"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical"
       }
      }
     },
     "localname": "SegmentGeographicalDomain",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueTables"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementGeographicalAxis": {
     "auth_ref": [
      "r156",
      "r157",
      "r311",
      "r312",
      "r313",
      "r364",
      "r366",
      "r369",
      "r371",
      "r372",
      "r374",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r382",
      "r387",
      "r400",
      "r407",
      "r445",
      "r460"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]"
       }
      }
     },
     "localname": "StatementGeographicalAxis",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueTables"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r7",
      "r402"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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).",
        "label": "Accounts payable"
       }
      }
     },
     "localname": "AccountsPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r159",
      "r160"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Accounts receivable - Less allowances of $146,000 and $160,000, respectively",
        "verboseLabel": "Accounts receivable - Less allowances of $146,000 and $160,000, respectively"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails",
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r9"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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).",
        "label": "Other accrued expenses"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "auth_ref": [
      "r22",
      "r78",
      "r278"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.",
        "label": "Less accumulated depreciation"
       }
      }
     },
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapital": {
     "auth_ref": [
      "r29",
      "r402",
      "r462"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Additional paid-in capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapital",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [
      "r220",
      "r221",
      "r222",
      "r309",
      "r431",
      "r432",
      "r433",
      "r449",
      "r463"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Additional Paid-in Capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to reconcile net income (loss) to net cash used in operating activities"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "auth_ref": [
      "r81",
      "r161",
      "r165"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.",
        "label": "Accounts Receivable, Allowance for Credit Loss, Current"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r56",
      "r80",
      "r96",
      "r123",
      "r144",
      "r150",
      "r162",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r245",
      "r247",
      "r257",
      "r273",
      "r335",
      "r402",
      "r414",
      "r442",
      "r443",
      "r451"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Total assets",
        "totalLabel": "Total assets"
       }
      }
     },
     "localname": "Assets",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets {1}",
        "terseLabel": "Assets"
       }
      }
     },
     "localname": "AssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r73",
      "r85",
      "r96",
      "r162",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r245",
      "r247",
      "r257",
      "r402",
      "r442",
      "r443",
      "r451"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Total current assets",
        "totalLabel": "Total current assets"
       }
      }
     },
     "localname": "AssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current Assets"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "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).",
        "label": "Accounting Policies {1}",
        "terseLabel": "Accounting Policies"
       }
      }
     },
     "localname": "BasisOfAccountingPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BuildingsAndImprovementsGross": {
     "auth_ref": [
      "r51"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Buildings and improvements"
       }
      }
     },
     "localname": "BuildingsAndImprovementsGross",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r15",
      "r76",
      "r388"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Cash and cash equivalents",
        "periodEndLabel": "Cash and cash equivalents at end of period",
        "periodStartLabel": "Cash and cash equivalents at beginning of period"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets",
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect": {
     "auth_ref": [
      "r0",
      "r45"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Net decrease in cash and cash equivalents",
        "totalLabel": "Net decrease in cash and cash equivalents"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CertificatesOfDepositAtCarryingValue": {
     "auth_ref": [
      "r422"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A savings certificate entitling the Entity (that is, bearer) to receive interest at an established maturity date, based upon a fixed interest rate. A certificate of deposit may be issued in any denomination. Certificates of deposit are generally issued by commercial banks and, therefore, insured by the FDIC (up to the prescribed limit). Certificates of deposit generally restrict holders from withdrawing funds on demand without the incurrence of penalties. Generally, only certificates of deposit with original maturities of three months or less qualify as cash equivalents. Original maturity means original maturity to the entity holding the investment. As a related example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three-years ago does not become a cash equivalent when its remaining maturity is three months.",
        "label": "Certificates of deposit"
       }
      }
     },
     "localname": "CertificatesOfDepositAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and contingencies (Note 3)"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommitmentsAndContingenciesPolicyTextBlock": {
     "auth_ref": [
      "r23",
      "r373"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for commitments and contingencies, which may include policies for recognizing and measuring loss and gain contingencies.",
        "label": "Commitments and Contingencies {2}",
        "terseLabel": "Commitments and Contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommonStockDividendsPerShareDeclared": {
     "auth_ref": [
      "r53"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate dividends declared during the period for each share of common stock outstanding.",
        "label": "Cash dividends declared per share"
       }
      }
     },
     "localname": "CommonStockDividendsPerShareDeclared",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited",
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnauditedParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r405",
      "r406",
      "r407",
      "r409",
      "r410",
      "r411",
      "r412",
      "r431",
      "r432",
      "r449",
      "r461",
      "r463"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock that is subordinate to all other stock of the issuer.",
        "label": "Common Stock"
       }
      }
     },
     "localname": "CommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r28"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of common stock.",
        "label": "Common Stock, Par or Stated Value Per Share"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r28",
      "r323"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.",
        "label": "Common Stock, Shares Authorized"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r28"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Common Stock, Shares, Issued"
       }
      }
     },
     "localname": "CommonStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "auth_ref": [
      "r5",
      "r28",
      "r323",
      "r341",
      "r463",
      "r464"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.",
        "label": "Common Stock, Shares, Outstanding",
        "periodEndLabel": "Common Stock Shares",
        "periodStartLabel": "Common Stock Shares"
       }
      }
     },
     "localname": "CommonStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheetsParenthetical",
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValueOutstanding": {
     "auth_ref": [
      "r28",
      "r323"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Common stock, $1.00 par value, 4,000,000 shares authorized, 1,138,096 shares issued; 966,132 shares outstanding"
       }
      }
     },
     "localname": "CommonStockValueOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ConcentrationRiskCreditRisk": {
     "auth_ref": [
      "r26",
      "r66"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for credit risk.",
        "label": "Risks and Uncertainties {1}",
        "terseLabel": "Risks and Uncertainties"
       }
      }
     },
     "localname": "ConcentrationRiskCreditRisk",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConcentrationRiskDisclosureTextBlock": {
     "auth_ref": [
      "r49"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Risks and Uncertainties"
       }
      }
     },
     "localname": "ConcentrationRiskDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRisksAndUncertainties"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CostOfRevenue": {
     "auth_ref": [
      "r40",
      "r96",
      "r162",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r257",
      "r442"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period.",
        "label": "Cost of goods sold"
       }
      }
     },
     "localname": "CostOfRevenue",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CustomerAdvancesAndDepositsCurrent": {
     "auth_ref": [
      "r61"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Unearned revenue and customer deposits"
       }
      }
     },
     "localname": "CustomerAdvancesAndDepositsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r3",
      "r54",
      "r67",
      "r239",
      "r240",
      "r430"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred income taxes {1}",
        "terseLabel": "Deferred income taxes"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilitiesNet": {
     "auth_ref": [
      "r226",
      "r227",
      "r274"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.",
        "label": "Deferred income taxes"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilitiesNet",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Depreciation": {
     "auth_ref": [
      "r3",
      "r21"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Depreciation"
       }
      }
     },
     "localname": "Depreciation",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails",
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "auth_ref": [
      "r445"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Disaggregation of Revenue"
       }
      }
     },
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureTextBlockAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Notes"
       }
      }
     },
     "localname": "DisclosureTextBlockAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_Dividends": {
     "auth_ref": [
      "r1",
      "r53"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Dividends declared",
        "negatedLabel": "Dividends declared"
       }
      }
     },
     "localname": "Dividends",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EarningsPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Per share data"
       }
      }
     },
     "localname": "EarningsPerShareAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EmployeeRelatedLiabilitiesCurrent": {
     "auth_ref": [
      "r9"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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).",
        "label": "Accrued wages and salaries"
       }
      }
     },
     "localname": "EmployeeRelatedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r5",
      "r70",
      "r89",
      "r90",
      "r91",
      "r99",
      "r100",
      "r101",
      "r103",
      "r108",
      "r110",
      "r118",
      "r163",
      "r164",
      "r195",
      "r220",
      "r221",
      "r222",
      "r235",
      "r236",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r258",
      "r259",
      "r260",
      "r261",
      "r262",
      "r263",
      "r264",
      "r300",
      "r301",
      "r302",
      "r309",
      "r360"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Equity Component"
       }
      }
     },
     "localname": "EquityComponentDomain",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_GainLossOnDispositionOfAssets": {
     "auth_ref": [
      "r428",
      "r437",
      "r438"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, excluding oil and gas property and timber property.",
        "label": "Gain on disposal of equipment"
       }
      }
     },
     "localname": "GainLossOnDispositionOfAssets",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r39",
      "r96",
      "r123",
      "r143",
      "r149",
      "r152",
      "r162",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r257",
      "r393",
      "r442"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.",
        "label": "Gross profit",
        "totalLabel": "Gross profit"
       }
      }
     },
     "localname": "GrossProfit",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic": {
     "auth_ref": [
      "r97",
      "r241"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of earnings or loss from continuing operations before income taxes that is attributable to domestic operations.",
        "label": "Income (loss) before income taxes",
        "totalLabel": "Income (loss) before income taxes"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsPerBasicShare": {
     "auth_ref": [
      "r37",
      "r58",
      "r59",
      "r93",
      "r102",
      "r104",
      "r105",
      "r106",
      "r107",
      "r113",
      "r115",
      "r116",
      "r256",
      "r269",
      "r459"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income (loss) from continuing operations per each share of common stock or unit outstanding during the reporting period.",
        "label": "Basic net income (loss) per share"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsPerBasicShare",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare": {
     "auth_ref": [
      "r37",
      "r93",
      "r102",
      "r104",
      "r105",
      "r106",
      "r107",
      "r113",
      "r115",
      "r116",
      "r117",
      "r256",
      "r269",
      "r459"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Diluted net income (loss) per share"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsPerDilutedShare",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_IncomeStatementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Condensed Consolidated Statements of Operations (Unaudited)"
       }
      }
     },
     "localname": "IncomeStatementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r98",
      "r223",
      "r229",
      "r230",
      "r233",
      "r237",
      "r242",
      "r243",
      "r244",
      "r308"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Income Taxes"
       }
      }
     },
     "localname": "IncomeTaxDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureIncomeTaxes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r64",
      "r68",
      "r109",
      "r110",
      "r131",
      "r228",
      "r238",
      "r281"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.",
        "label": "Provision (benefit) for income taxes"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "auth_ref": [
      "r88",
      "r224",
      "r225",
      "r230",
      "r231",
      "r232",
      "r234",
      "r306"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Income Taxes {1}",
        "terseLabel": "Income Taxes"
       }
      }
     },
     "localname": "IncomeTaxPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "auth_ref": [
      "r2"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Accounts payable {1}",
        "terseLabel": "Accounts payable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayable",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r2"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Accounts receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInCustomerAdvancesAndDeposits": {
     "auth_ref": [
      "r62"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "order": 11.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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).",
        "label": "Unearned revenue and customer deposits {1}",
        "terseLabel": "Unearned revenue and customer deposits"
       }
      }
     },
     "localname": "IncreaseDecreaseInCustomerAdvancesAndDeposits",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities": {
     "auth_ref": [
      "r2"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Accrued wages and salaries {1}",
        "terseLabel": "Accrued wages and salaries"
       }
      }
     },
     "localname": "IncreaseDecreaseInEmployeeRelatedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r2"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Inventories"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventories",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Changes in operating assets and liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherAccruedLiabilities": {
     "auth_ref": [
      "r2"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in other expenses incurred but not yet paid.",
        "label": "Other accrued expenses {1}",
        "terseLabel": "Other accrued expenses"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherOperatingAssets": {
     "auth_ref": [
      "r2"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in operating assets classified as other.",
        "label": "Other current assets {1}",
        "terseLabel": "Other current assets"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherOperatingAssets",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestAndOtherIncome": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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).",
        "label": "Interest income"
       }
      }
     },
     "localname": "InterestAndOtherIncome",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "auth_ref": [
      "r166"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Inventories {1}",
        "terseLabel": "Inventories"
       }
      }
     },
     "localname": "InventoryDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureInventories"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryFinishedGoods": {
     "auth_ref": [
      "r424"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer.",
        "label": "Finished goods"
       }
      }
     },
     "localname": "InventoryFinishedGoods",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureInventoriesInventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryGross": {
     "auth_ref": [
      "r427"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Inventories, gross"
       }
      }
     },
     "localname": "InventoryGross",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureInventoriesInventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r83",
      "r389",
      "r402"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.",
        "label": "Inventories, net"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureInventoriesInventoriesDetails",
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails",
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryPolicyTextBlock": {
     "auth_ref": [
      "r65",
      "r75",
      "r82",
      "r166",
      "r167",
      "r168",
      "r267",
      "r391"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Inventories {2}",
        "terseLabel": "Inventories"
       }
      }
     },
     "localname": "InventoryPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryRawMaterials": {
     "auth_ref": [
      "r426"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer.",
        "label": "Raw material"
       }
      }
     },
     "localname": "InventoryRawMaterials",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureInventoriesInventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryValuationReserves": {
     "auth_ref": [
      "r19",
      "r427"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of valuation reserve for inventory.",
        "label": "Valuation reserves",
        "negatedLabel": "Valuation reserves"
       }
      }
     },
     "localname": "InventoryValuationReserves",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureInventoriesInventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryWorkInProcess": {
     "auth_ref": [
      "r425"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Work-in-process"
       }
      }
     },
     "localname": "InventoryWorkInProcess",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureInventoriesInventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LandAndLandImprovements": {
     "auth_ref": [
      "r423"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Land and improvements"
       }
      }
     },
     "localname": "LandAndLandImprovements",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LegalMattersAndContingenciesTextBlock": {
     "auth_ref": [
      "r52"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for legal proceedings, legal contingencies, litigation, regulatory and environmental matters and other contingencies.",
        "label": "Commitments and Contingencies {1}",
        "terseLabel": "Commitments and Contingencies"
       }
      }
     },
     "localname": "LegalMattersAndContingenciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureCommitmentsAndContingencies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_Liabilities": {
     "auth_ref": [
      "r8",
      "r96",
      "r162",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r246",
      "r247",
      "r248",
      "r257",
      "r322",
      "r392",
      "r414",
      "r442",
      "r451",
      "r452"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Total liabilities",
        "totalLabel": "Total liabilities"
       }
      }
     },
     "localname": "Liabilities",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r33",
      "r57",
      "r277",
      "r402",
      "r429",
      "r435",
      "r450"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.",
        "label": "Total liabilities and shareholders' equity",
        "totalLabel": "Total liabilities and shareholders' equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities and Shareholders' Equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r10",
      "r74",
      "r96",
      "r162",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r246",
      "r247",
      "r248",
      "r257",
      "r402",
      "r442",
      "r451",
      "r452"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Total current liabilities",
        "totalLabel": "Total current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current Liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_MachineryAndEquipmentGross": {
     "auth_ref": [
      "r51"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Production equipment and other"
       }
      }
     },
     "localname": "MachineryAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r94"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "order": 3.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Net cash used in financing activities",
        "totalLabel": "Net cash used in financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows from financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r94"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Net cash provided by (used in) investing activities",
        "totalLabel": "Net cash provided by (used in) investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows from investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r45",
      "r46",
      "r47"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Net cash used in operating activities",
        "totalLabel": "Net cash used in operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows from operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r38",
      "r47",
      "r60",
      "r72",
      "r86",
      "r87",
      "r91",
      "r96",
      "r102",
      "r104",
      "r105",
      "r106",
      "r107",
      "r109",
      "r110",
      "r114",
      "r123",
      "r143",
      "r149",
      "r152",
      "r162",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r256",
      "r257",
      "r280",
      "r343",
      "r358",
      "r359",
      "r393",
      "r413",
      "r442"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.",
        "label": "Net Income (loss)",
        "totalLabel": "Net Income (loss)"
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited",
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited",
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NonUsMember": {
     "auth_ref": [
      "r465",
      "r466",
      "r467",
      "r468"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Countries excluding the United States of America (US).",
        "label": "Non-US"
       }
      }
     },
     "localname": "NonUsMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r123",
      "r143",
      "r149",
      "r152",
      "r393"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net result for the period of deducting operating expenses from operating revenues.",
        "label": "Operating profit (loss)",
        "totalLabel": "Operating profit (loss)"
       }
      }
     },
     "localname": "OperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssets": {
     "auth_ref": [
      "r55",
      "r79",
      "r272",
      "r414"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of assets classified as other.",
        "label": "Other Assets"
       }
      }
     },
     "localname": "OtherAssets",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssetsCurrent": {
     "auth_ref": [
      "r84",
      "r402"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current assets classified as other.",
        "label": "Other current assets"
       }
      }
     },
     "localname": "OtherAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "auth_ref": [
      "r42"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.",
        "label": "Other income"
       }
      }
     },
     "localname": "OtherNonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfDividendsCommonStock": {
     "auth_ref": [
      "r14"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity.",
        "label": "Cash dividends paid",
        "negatedLabel": "Cash dividends paid"
       }
      }
     },
     "localname": "PaymentsOfDividendsCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireProductiveAssets": {
     "auth_ref": [
      "r63",
      "r446",
      "r447",
      "r448"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow for purchases of and capital improvements on property, plant and equipment (capital expenditures), software, and other intangible assets.",
        "label": "Capital expenditures",
        "negatedLabel": "Capital expenditures"
       }
      }
     },
     "localname": "PaymentsToAcquireProductiveAssets",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r44"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Capital expenditures {1}",
        "terseLabel": "Capital expenditures"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PolicyTextBlockAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Policies"
       }
      }
     },
     "localname": "PolicyTextBlockAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PreferredStockMember": {
     "auth_ref": [
      "r405",
      "r406",
      "r409",
      "r410",
      "r411",
      "r412",
      "r461",
      "r463"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Preferred Stock"
       }
      }
     },
     "localname": "PreferredStockMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r27",
      "r194"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.",
        "label": "Preferred Stock, Par or Stated Value Per Share"
       }
      }
     },
     "localname": "PreferredStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "auth_ref": [
      "r27",
      "r323"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Preferred Stock, Shares Authorized"
       }
      }
     },
     "localname": "PreferredStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "auth_ref": [
      "r27",
      "r323",
      "r341",
      "r463",
      "r464"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Preferred Stock, Shares Outstanding"
       }
      }
     },
     "localname": "PreferredStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockValue": {
     "auth_ref": [
      "r27",
      "r275",
      "r402"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Preferred stock, no par value, 500,000 shares authorized: none outstanding"
       }
      }
     },
     "localname": "PreferredStockValue",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrepaidTaxes": {
     "auth_ref": [
      "r390",
      "r396",
      "r436"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Prepaid income taxes"
       }
      }
     },
     "localname": "PrepaidTaxes",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities": {
     "auth_ref": [
      "r13",
      "r434"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow associated with the maturity, prepayments and calls (requests for early payments) of debt securities designated as held-to-maturity.",
        "label": "Proceeds from certificates of deposit"
       }
      }
     },
     "localname": "ProceedsFromMaturitiesPrepaymentsAndCallsOfHeldToMaturitySecurities",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": {
     "auth_ref": [
      "r43"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Proceeds from the sale of equipment"
       }
      }
     },
     "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "auth_ref": [
      "r51",
      "r77",
      "r279"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Property, Plant and Equipment, Gross",
        "totalLabel": "Property, Plant and Equipment, Gross"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r4",
      "r271",
      "r279",
      "r402"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Net property, plant and equipment",
        "totalLabel": "Net property, plant and equipment",
        "verboseLabel": "Net property, plant and equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentNet",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails",
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r30",
      "r53",
      "r276",
      "r303",
      "r304",
      "r307",
      "r324",
      "r402"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of accumulated undistributed earnings (deficit).",
        "label": "Retained earnings"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r70",
      "r99",
      "r100",
      "r101",
      "r103",
      "r108",
      "r110",
      "r163",
      "r164",
      "r220",
      "r221",
      "r222",
      "r235",
      "r236",
      "r249",
      "r251",
      "r252",
      "r254",
      "r255",
      "r300",
      "r302",
      "r309",
      "r463"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated undistributed earnings (deficit).",
        "label": "Retained Earnings"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "auth_ref": [
      "r124",
      "r125",
      "r142",
      "r147",
      "r148",
      "r154",
      "r156",
      "r158",
      "r212",
      "r213",
      "r268"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Revenue {2}",
        "terseLabel": "Revenue"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": {
     "auth_ref": [
      "r69",
      "r204",
      "r205",
      "r206",
      "r207",
      "r208",
      "r209",
      "r210",
      "r211",
      "r385"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for revenue from contract with customer.",
        "label": "Revenue {1}",
        "terseLabel": "Revenue"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "auth_ref": [
      "r69",
      "r196",
      "r197",
      "r198",
      "r199",
      "r200",
      "r201",
      "r202",
      "r203",
      "r214"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Revenue"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenue"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_Revenues": {
     "auth_ref": [
      "r92",
      "r96",
      "r124",
      "r125",
      "r142",
      "r147",
      "r148",
      "r154",
      "r156",
      "r158",
      "r162",
      "r185",
      "r186",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r257",
      "r270",
      "r442"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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).",
        "label": "Net sales"
       }
      }
     },
     "localname": "Revenues",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails",
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "auth_ref": [
      "r6",
      "r34",
      "r35",
      "r36"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Inventories {3}",
        "terseLabel": "Inventories"
       }
      }
     },
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureInventoriesInventoriesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": {
     "auth_ref": [
      "r16",
      "r17",
      "r18",
      "r20"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Schedule of Segment Reporting by Segment"
       }
      }
     },
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentDomain": {
     "auth_ref": [
      "r120",
      "r123",
      "r124",
      "r125",
      "r126",
      "r127",
      "r128",
      "r129",
      "r130",
      "r131",
      "r132",
      "r133",
      "r134",
      "r142",
      "r143",
      "r144",
      "r145",
      "r146",
      "r147",
      "r148",
      "r149",
      "r150",
      "r152",
      "r158",
      "r169",
      "r170",
      "r171",
      "r172",
      "r173",
      "r174",
      "r175",
      "r176",
      "r177",
      "r179",
      "r180",
      "r282",
      "r283",
      "r284",
      "r285",
      "r286",
      "r287",
      "r288",
      "r289",
      "r290",
      "r291",
      "r292",
      "r397",
      "r421",
      "r460"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Segments"
       }
      }
     },
     "localname": "SegmentDomain",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "auth_ref": [
      "r119",
      "r120",
      "r121",
      "r122",
      "r123",
      "r135",
      "r146",
      "r150",
      "r151",
      "r152",
      "r153",
      "r154",
      "r155",
      "r158"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Segment Reporting"
       }
      }
     },
     "localname": "SegmentReportingDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReporting"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentReportingPolicyPolicyTextBlock": {
     "auth_ref": [
      "r136",
      "r137",
      "r138",
      "r139",
      "r140",
      "r141",
      "r156",
      "r394"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for segment reporting.",
        "label": "Segment Reporting {1}",
        "terseLabel": "Segment Reporting"
       }
      }
     },
     "localname": "SegmentReportingPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r41"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.",
        "label": "Selling and administrative expenses"
       }
      }
     },
     "localname": "SellingGeneralAndAdministrativeExpense",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r48",
      "r95"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.",
        "label": "Accounting Policies"
       }
      }
     },
     "localname": "SignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureAccountingPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "auth_ref": [
      "r71",
      "r120",
      "r123",
      "r124",
      "r125",
      "r126",
      "r127",
      "r128",
      "r129",
      "r130",
      "r131",
      "r132",
      "r133",
      "r134",
      "r142",
      "r143",
      "r144",
      "r145",
      "r146",
      "r147",
      "r148",
      "r149",
      "r150",
      "r152",
      "r158",
      "r169",
      "r170",
      "r171",
      "r172",
      "r173",
      "r174",
      "r175",
      "r176",
      "r177",
      "r178",
      "r179",
      "r180",
      "r282",
      "r283",
      "r284",
      "r285",
      "r286",
      "r287",
      "r288",
      "r289",
      "r290",
      "r291",
      "r292",
      "r397",
      "r421",
      "r460"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business segments.",
        "label": "Segments [Axis]"
       }
      }
     },
     "localname": "StatementBusinessSegmentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r5",
      "r12",
      "r70",
      "r89",
      "r90",
      "r91",
      "r99",
      "r100",
      "r101",
      "r103",
      "r108",
      "r110",
      "r118",
      "r163",
      "r164",
      "r195",
      "r220",
      "r221",
      "r222",
      "r235",
      "r236",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r258",
      "r259",
      "r260",
      "r261",
      "r262",
      "r263",
      "r264",
      "r300",
      "r301",
      "r302",
      "r309",
      "r360"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by component of equity.",
        "label": "Equity Components [Axis]"
       }
      }
     },
     "localname": "StatementEquityComponentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementLineItems": {
     "auth_ref": [
      "r99",
      "r100",
      "r101",
      "r118",
      "r268",
      "r305",
      "r310",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r323",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r342",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r357",
      "r360",
      "r408"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Statement [Line Items]"
       }
      }
     },
     "localname": "StatementLineItems",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureAccountingPoliciesPolicies",
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueTables",
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails",
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Condensed Consolidated Statements of Cash Flows (Unaudited)"
       }
      }
     },
     "localname": "StatementOfCashFlowsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Condensed Consolidated Balance Sheets",
        "verboseLabel": "Condensed Consolidated Balance Sheets - Parenthetical"
       }
      }
     },
     "localname": "StatementOfFinancialPositionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Condensed Consolidated Statements of Shareholders' Equity (Unaudited)",
        "verboseLabel": "Condensed Consolidated Statements of Shareholders' Equity (Unaudited) - Parenthetical"
       }
      }
     },
     "localname": "StatementOfStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r99",
      "r100",
      "r101",
      "r118",
      "r268",
      "r305",
      "r310",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r323",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r342",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r357",
      "r360",
      "r408"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Statement"
       }
      }
     },
     "localname": "StatementTable",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureAccountingPoliciesPolicies",
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueDetails",
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureRevenueDisaggregationOfRevenueTables",
      "http://www.chicagorivet.com/20230630/role/idr_DisclosureSegmentReportingScheduleOfSegmentReportingBySegmentDetails",
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r28",
      "r31",
      "r32",
      "r50",
      "r325",
      "r341",
      "r361",
      "r362",
      "r402",
      "r414",
      "r429",
      "r435",
      "r450",
      "r463"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.",
        "label": "Total shareholders' equity",
        "periodEndLabel": "Ending Balance",
        "periodStartLabel": "Beginning Balance",
        "totalLabel": "Total shareholders' equity"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets",
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shareholders' Equity"
       }
      }
     },
     "localname": "StockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TableTextBlockSupplementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Tables/Schedules"
       }
      }
     },
     "localname": "TableTextBlockSupplementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_TextBlockAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Details"
       }
      }
     },
     "localname": "TextBlockAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_TreasuryStockCommonMember": {
     "auth_ref": [
      "r24"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury.",
        "label": "Treasury Stock, Common"
       }
      }
     },
     "localname": "TreasuryStockCommonMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TreasuryStockCommonShares": {
     "auth_ref": [
      "r24"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury.",
        "label": "Treasury Stock Shares",
        "periodEndLabel": "Treasury Stock Shares",
        "periodStartLabel": "Treasury Stock Shares"
       }
      }
     },
     "localname": "TreasuryStockCommonShares",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_TreasuryStockValue": {
     "auth_ref": [
      "r11",
      "r24",
      "r25"
     ],
     "calculation": {
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Treasury stock, 171,964 shares at cost",
        "negatedLabel": "Treasury stock, 171,964 shares at cost"
       }
      }
     },
     "localname": "TreasuryStockValue",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r112",
      "r117"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Diluted"
       }
      }
     },
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r111",
      "r117"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Basic"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.chicagorivet.com/20230630/role/idr_StatementCondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "xbrltype": "sharesItemType"
    }
   },
   "unitCount": 3
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r1": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "405",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147481071/942-405-45-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r10": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.21)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r100": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r101": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r102": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r103": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(3)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r106": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r108": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r11": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29,30)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-16",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r113": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-7",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r118": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r119": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "280",
   "URI": "https://asc.fasb.org//280/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r12": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-15",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r121": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r122": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r123": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r124": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r125": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r13": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r131": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r132": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(j)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r133": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r134": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "26",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-26",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-29",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-29",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r138": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-29",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-29",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r14": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r140": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-29",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-29",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r144": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r145": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r146": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r147": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r148": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r149": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r15": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-4",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r150": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r151": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r152": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "34",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-34",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r154": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r155": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r156": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-42",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r16": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r164": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r165": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479344/326-20-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r166": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "https://asc.fasb.org//330/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r169": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r17": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r170": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r171": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r172": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r173": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r174": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r178": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "360",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "420",
   "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r18": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r180": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(d))",
   "Topic": "420",
   "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r182": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r183": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Topic": "450",
   "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r184": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 5.Y.Q4)",
   "Topic": "450",
   "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r185": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r187": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r19": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 5.BB)",
   "Topic": "330",
   "URI": "https://asc.fasb.org//1943274/2147480581/330-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r193": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r194": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r195": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r197": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r199": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r20": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-15",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r204": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-17",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r205": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-18",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r206": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-18",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r207": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-19",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r208": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r209": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r21": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "360",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r211": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-9",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r215": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(i)",
   "Topic": "715",
   "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(d)",
   "Topic": "715",
   "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r218": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r22": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r220": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r221": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r222": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r223": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "https://asc.fasb.org//740/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r224": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-25",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-28",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r226": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r23": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "460",
   "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-8",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-19",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-20",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r233": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r234": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(3)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.5.Q1)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r238": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.7)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r239": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.1)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r24": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "505",
   "URI": "https://asc.fasb.org//1943274/2147481549/505-30-45-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r240": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r241": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.3)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r242": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.C)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r243": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "270",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r244": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r245": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "810",
   "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "810",
   "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "810",
   "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r248": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "810",
   "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r249": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r25": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "505",
   "URI": "https://asc.fasb.org//1943274/2147481520/505-30-50-4",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r250": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(h)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r251": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(h)(1)(i)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r252": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(h)(1)(iii)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r253": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(h)(1)(iv)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r254": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(i)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r255": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r256": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r257": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-17",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r26": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147480981/942-825-50-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r262": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r263": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r264": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Topic": "848",
   "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r265": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r266": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "910",
   "URI": "https://asc.fasb.org//1943274/2147482546/910-10-50-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r267": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "330",
   "Topic": "912",
   "URI": "https://asc.fasb.org//1943274/2147482105/912-330-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r268": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.L)",
   "Topic": "924",
   "URI": "https://asc.fasb.org//1943274/2147479941/924-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r269": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(27))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r27": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(28))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147479557/942-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r271": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147480842/942-360-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r272": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(10))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r274": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(15)(b)(2))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r275": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(21))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(8)(b))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(29))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(18))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(9))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column A))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column B))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column C))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column D))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column E))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column F))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column G))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column H))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r29": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column I))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column J))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column K))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r293": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-17(Column A))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r294": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-17(Column B))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r295": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-17(Column C))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r296": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-17(Column D))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-17(Column E))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r298": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-17(Column F))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r299": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-7A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r30": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r300": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r301": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(1)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(2)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r303": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(i)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(2)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r305": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.6-03(d))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r306": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.6-03(h)(1))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-11",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r308": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r309": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "205",
   "Subparagraph": "(a)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r31": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r310": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "210",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r311": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "210",
   "Subparagraph": "(b)(2)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r312": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "210",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "210",
   "Subparagraph": "(a)(2)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "210",
   "Subparagraph": "(e)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "210",
   "Subparagraph": "(f)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(1))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(12)(b)(1))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r318": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(12)(b)(2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(12)(b)(3))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r32": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(31))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(13)(a)(2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(13)(a)(3))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(14))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(16)(a))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r324": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(17))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(19))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(2)(a))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r327": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(2)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(3)(a))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(3)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r33": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(32))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(3)(c))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(6)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r332": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(6)(c))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(6)(d))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(6)(e))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(8))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(9)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(9)(c))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(9)(d))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(9)(e))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r34": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-05(2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-05(4))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "220",
   "Subparagraph": "(b)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "220",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(1))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(2)(a))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(a)(1))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r347": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(a)(2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r348": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(a)(3))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(a)(5))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r35": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(a)(6))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(a)(7))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(c)(1))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(c)(2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(c)(3))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(c)(5))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(c)(6))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(c)(7))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(9))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-09(1)(d))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r36": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-09(6))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-09(7))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r366": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r367": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r368": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r37": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(13))",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r371": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "310",
   "Subparagraph": "(SX 210.12-29(Footnote 4))",
   "Topic": "948",
   "URI": "https://asc.fasb.org//1943274/2147479851/948-310-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r373": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "450",
   "Topic": "954",
   "URI": "https://asc.fasb.org//1943274/2147480598/954-450-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r375": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r376": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r377": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r378": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r379": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r38": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(20))",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r380": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r381": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r382": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Footnote 2))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r383": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(c)",
   "Topic": "976",
   "URI": "https://asc.fasb.org//1943274/2147482856/976-310-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r384": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(b)",
   "Topic": "978",
   "URI": "https://asc.fasb.org//1943274/2147482707/978-310-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r385": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r386": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r387": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r388": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r389": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r39": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1,2)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r390": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(g)(4)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r391": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r392": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r393": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r394": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "47",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482785/280-10-55-47",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r395": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12A",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org//1943274/2147481933/310-10-55-12A",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r396": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "340",
   "URI": "https://asc.fasb.org//1943274/2147482955/340-10-05-5",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r397": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482548/350-20-55-24",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "505",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r399": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r40": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r400": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r401": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "https://asc.fasb.org//1943274/2147480547/715-80-55-8",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r402": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "852",
   "URI": "https://asc.fasb.org//1943274/2147481372/852-10-55-10",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r403": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "30",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479401/944-30-55-2",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r404": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-29F",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r405": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "210",
   "Subparagraph": "(b)(1)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r406": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "210",
   "Subparagraph": "(a)(1)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r407": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "210",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r408": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "310",
   "Subparagraph": "(d)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r41": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.4)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r410": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r411": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r412": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r413": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "830",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r414": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "830",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r415": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r416": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r417": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r418": {
   "Name": "Form 10-Q",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "308",
   "Subsection": "a",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r419": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r42": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.9)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r420": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r421": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4H",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r422": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r423": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(13))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r424": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r425": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(3))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r426": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r427": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r428": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r429": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r43": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r430": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r431": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r432": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r433": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r434": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "320",
   "URI": "https://asc.fasb.org//1943274/2147481830/320-10-45-11",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r435": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r436": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "340",
   "URI": "https://asc.fasb.org//1943274/2147483032/340-10-45-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r437": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-5",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r438": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r439": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "410",
   "URI": "https://asc.fasb.org//1943274/2147481931/410-30-50-10",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r44": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r440": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r441": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Topic": "450",
   "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r442": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r443": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r444": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r445": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r446": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "50",
   "Topic": "805",
   "URI": "https://asc.fasb.org//1943274/2147480060/805-50-25-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r447": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "50",
   "Topic": "805",
   "URI": "https://asc.fasb.org//1943274/2147480027/805-50-30-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r448": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "50",
   "Topic": "805",
   "URI": "https://asc.fasb.org//1943274/2147480027/805-50-30-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r449": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r45": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r450": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r451": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "852",
   "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r452": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "852",
   "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r453": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r454": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(2)",
   "Topic": "860",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r455": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "860",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r456": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r457": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "860",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r458": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "860",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r459": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(23))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r46": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r460": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479432/944-30-50-2B",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r461": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "205",
   "Subparagraph": "(a)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r462": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(18))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r463": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r464": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-09(7))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r465": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(ii))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r466": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r467": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r468": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r47": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "https://asc.fasb.org//235/tableOfContent",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r49": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "275",
   "URI": "https://asc.fasb.org//275/tableOfContent",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r5": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 4.E)",
   "Topic": "310",
   "URI": "https://asc.fasb.org//1943274/2147480418/310-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "https://asc.fasb.org//450/tableOfContent",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r53": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r54": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r55": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(10))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r56": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(11))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r57": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(23))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(19))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(20))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r6": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(22))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r61": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.20)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28",
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef"
  },
  "r63": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r64": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r65": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "270",
   "URI": "https://asc.fasb.org//1943274/2147482989/270-10-45-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "275",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r67": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "606",
   "URI": "https://asc.fasb.org//606/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r70": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "105",
   "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "205",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r75": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(13))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(14))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r79": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(17))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r80": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(18))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r81": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(8))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(9))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r9": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.20)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r90": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r91": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(1))",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r93": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(25))",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r94": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r96": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r97": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(1))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r98": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r99": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  }
 },
 "version": "2.2"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>40
<FILENAME>0001193125-23-204957-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001193125-23-204957-xbrl.zip
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
MRK'ZN>(QK?!B/M,N4=B[H&2\[R_LU"XALS)V>WP-C[7WR18I(!K-JRL]_0D
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
M-->[7W>:P=VN:KX>W*T;PDA0#@0J-L6;OE6#Q7L PTF94K8N GC23,'5MX/
MP<@9M& M":.",N*DT8FY$-G0B##J7H>$W>P#Y3(5=2I6IE-0.XW@N4DJGI[*
MB8S0+,#3/VJ5FWDY6CL/"X;W(KGX#L<?LBRV@F*[L3=P*&6 @*0BB&:"8J@
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
MXA4^5-QS%,-H)D-,PX[.08;9NR5)1#Z<D.=LOJ#9O4QX9A\HG[ T8\S\#'2
M.4D$6H=4#"3D2(U%8"ASLL0NQ-P[9Q!\R=#2UO4_&E I&D*1I.<-#Y95D=8H
MQ")S>L5WT6*Q^K!EZB^F[TD:I1,2)9?EMLY:>=?A46]%ZQWD@^59I;%8:\6(
M_\:RA,3RV.6[*!$7S*'K.VQ&VK[ULL2;G-1#!^+0*9?I#LM#.($-K#8FT];Q
M=\5JC[=CW= H+3A;K\=J-/5Q/Y:./RAAK+H@:T,\W!NR= 9079%E[($>0?*>
M,'%WFSQ'\9Y_MKL<-+?U 1.M!%YP4E!'!7DDZ0>(%*T-5% Q=T,/6!ESKK'D
MG$0S!3ZVOX=@0LD)5 .D(H@$Q8!Z7JEIO;?U1AUDO>9Z[XO_VUYZN>/E!.<1
M24(9^E95=Y<5 =SHLBX2^FM&OYZE\FR&UGF@:>RMDJM2!@@^!,$#DAXL"I*!
MX<2LM[:<J][X+HB9W%.)@I=O7K^42)B2Y,MI&G^,Z%><*]-/5"VZ]KF!&RQG
M*48%30^;+*",<3FARP"10E:^$A07'\KZ57<8;40?H7A)1?Q"?$S26!YUC%%.
MYE@$VOBZX$4@"#98J(*M#33#3'>BV.'Z+7N]7"P2N8VSS7ZVQ\"3H:-<H$"$
MX,$.JSHCH;W\7$W0F#/;],T@(/N$<U6!M-)14"^0IH%;"P)0X+67%9I*OE5\
M;UKQ<2N^%X9VUN1RB(K[&'KMS;0["#LB=N@3O#(I@YTQML2Q9NSI6GL\S:N2
MPM>9WE%1SX^-4$$_,*19K& XZ:OMC&'.CB5)]B!<V^\S>I(M;_/I,JE**%_A
M"2;W8A:RG"=K10-\QJR+Q" 73%4[>T-]A-92H*DX*4!Q3'(DTJ=&J&0=&$ [
MF:UQ6*US3^_I3DQM1,Y[QDV?.39#Y-3TGD43OA+%SO,ZCVBN4^4=GI$T%6N>
M,B(8F/!\'ZH3G7_E)O=^0I:NR4DAI"-I#^Q9=MOVYWH[,NMSOWVY/H]YN3Z/
M>1IH[KZS09P/90Y[W^%[4:/<?(%=K0G\S&63GX<#EH)HJ!?3-15N'IK46+BS
M$UJD,LUOD]4:4UIGM*XEQ"EMX0Y:*I>DG5X' \O<TEG=5.5I.:TM%JL[KUU
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
MZSJ<\]]^_J;ZA/_O-F+XYV_^#U!+ P04    " #'@ =7IAP"+$46  "M?@$
M%    &-V<BTR,#(S,#8S,%]P<F4N>&UL[5UM<]LXDOX\\RMTN0^YK1K'<7*S
MFZ0FLR5+=LX[3JRSG9V]N[I*P20DX4(16H"4K?WU!U"4S!<T".J%!+BJVATK
M4H/L?AZ\-;H!_/+GIUG06V#&"0T_OCQ[]?IE#X<>]4DX^?B2<'KR[MW/[T_.
M7O[YUQ]_^9>3D]Z(43_VL-][6/8NAI_ZMSPF$>YQ.HX>$<,_]?K^ H528$!G
M\SC"K'<5AG2!(O$"_I/XA_?J)_';?,G(9!KU_FWPA]Z;UZ_?G;QY_>9M[W]&
MH[\-SOJO?QO^Y<UO?QV^O3Z[O;[[WU>]Q\?'5]B?():\[95'9[V3$Z%10,+O
M'^1_'A#'/6%*R#^^F$;1_,/IJ2SS],""5Y1-3L4KWIZN!5_\^,,/B>R')TYR
M\H]OU])GIW_[?'WG3?$,G9"01]*FI!PG'WCR]37U$J,,7M@#)>2_3M9B)_*K
MD[,W)V_/7CUQ_UG-,0ER;_&FQ$,3RL@"1Q*,4PG>ZS^^??U<1#ZS'A2E$BD8
M9^_?OS]-?LT(BX?YT48Z^^R?3U<_YH6)1I<-O+_^^,.*448#?(O'/?GWZ^V5
MF>VG4OJ4^.S;D'KQ#(?1^F\_]"_"B$3+JW!,V2QA[44O,>E#M)SCCR\XF<T#
MO/YNRO#XXPMOP4[6SY9T_*OQHT\WALP9YD(J^?I:?)%[*7Z*<.AC?_U:J?]!
M3!7JI/H$U,NJ\#*0=9BREUG#7TH-^)K5,>(/"54Q/YD@-$]T.,5!Q-??)" E
M *5??+L7EIV+1W_O/_"((2]:/S] #SCX^!*6.]U%58Z]5Q.Z./4Q66DI/CPK
M)_[Q;07-0.#$4' EL'_Z#2\+RL%R&>6RO/997E'$O/4CQ<>$U)=@W4\E3N>B
M[PRC$\%XX*]+CQF=Z<!:OY7JE.[%7+R?SJ6F*'C9H\S';-71'QCL0<RD39>$
M>RCX+XS81>@/4805>(.BED,.FZA&_<WA45]W!/?BB0JD<S];CF[>%#6B;YM#
M]#]CQ,1T)EC>XCEEQ3Y-)^D(SB4#U9#_>W.0CS CU(?[#;6<(W 7C%.#_?/A
MP5Z-&Y<DP%_BV0-FX'B8$;$<XK)):G3_V!2ZMWA"I*IA] 7-5#59*>8$RD73
MU$C_J2FDA7])F>B^$J3N!&!X0&,Q)5H.J \#KR_E! \5AJMI>=<4+??HZ<H7
MAI(Q67G-%7T-).\$%:"Q:A+>-T5"W_<%9CS](_Q1? 82H))U GRED8 3]+IA
MY ?BXPV[IX]A%>X929=0SQH(8-Z YYE3*>D*;]B(T04)/7@( ,1=0K]D*D!!
M VYH3J\1Y1$*_IO,M6.P4M@E^ MF N WX+'*5MAG& %PYWZV'."\*0"D#7BD
M<K$_&$UI"#M))1'+H2V;!,#;@ ]ZA[V8":K/WCS<DRA0U=J2B.7PEDT"X&W
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
MX4SW6Q,:H-FVTFX!U;.UT" 05?<IKC,+PP-PVTJ+S<32AF1!?!SZFWYJB+U
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
M>.#%"\$,]$LP]C 1%>=MP[$9+@$O/)N+4-+L*'TY6L-[43!=2WBGL#4^0!@
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
M]!=Y]3_$]RPS&)^<=]K^&N[Z:W8@=Q7$KM>[_!1,33=^*KE%^U>IF^T+?/J
MS],8W7,C?R!KB)ZD2@,<(GIARP75;+R2'(8";-L>\!4*G7RZDXG;V8-(K8<7
M]R$'2$4!I*'GL*_WD!O%5T$PXPB]V> 4!8PLRFI?E(S56LA:U-H4H(]YT7JH
M1U8&;@_SRW8KI.LZH'BU36_U@TP%WY,N4MHYHD!^;XX#IRV%?*J/=^:' WKF
MUO'V6Z[SU4S;&BG;A$S. $; A9B.@-<C=VQ7&)I3.S2=(XC;YHO[!FN[<B_8
MRLHZZ5OK 9NTIV#R%]#MR >U<0$7&R79W[<D-&W<5X7;JV"L!NV4C$&_C"!?
M.'EY9 _MTL[;EB%64$5#*?"(?PY%G =)SD_CH@[B4Q55U,NZ JA&!^#>)V8P
M\U_C&H[<PZ,KM22N#0&?05TG9Q?=4_EN,W?%N-@SS9NG(]!0%/ G5W=7OF_]
MA(:S2#T,PD-W<+#0D$#R')[(?YLP)7BT.-9K4=9.RS[8&;R]H\##5SA4! UH
M%]Y.\F)D71*-OB[V<NZUY]2Y:'>_M&:8OW/WJ]D3PPX?X\4*<G V>FK#Q<"U
M*C.A99R^SZ$0']]9^GGYI1&G[+\A^[OWF?(<F]JZ+6N!.%UE60 1"[V_G( D
M;=0R6E<JL'.=$ &WZP1"Z GAF @7GFOAN7P6_D25$KT_\HOMFNX0WA5H7TV>
M&^WK9X02TJ7K* I_X[&Q\,/B"+*T98AQXDPQ9@,%'GE54L2O4ORF#$Z6(.&?
MDP_+D-)Y[NT)$/2:/ NWWL1T-UZ[H"Q//S4?2>?!)^:/CCF"1\Y,Y]E\#3XN
M@Z6B7*Q(F"'AGWC&/@*Z *1CNZ23+"S5XT:AR(DS4["M7TY,#5\W,S&QZ>U\
MCR.#(647J83+=LQI0,[B'YCWNR+4_;E0@Q;9545U->T0@Y2'#Q9Z4'"$SLB<
MV,[K&<7)R?G%[U<7@]]NA-NK/R_OA9_-R?2C\'4 GUY?"A<WIU&7RDX*;@TN
M^%MRMBJ<*T#!&PDW4^+3ZT(#X=UWUYQ9-CSS?@=T[&>T%%4KP^>-45*H?=5.
ME9(I64*\W3R( <]R\Z!N'L3-Q'/O5*D1YD3GJVN=VFWP&S4M8'V:2^N>:MT=
M\UPY]/4JI2>V93EDV8T]3*UNMP'W8Q^"@J_PPC@0+L$$6L)_S5PBJ)(H*!)>
M5)'-EQFVO#Y3M0YUATCPP:A36M2MA>G.?MF#Y[(#O4,TQK[8RPK?.<2DPK5+
MRBZ.#TRGL M#RE*6<4:5,<.6>V>V-5+18].7SD'Z1V%'-8I25Q(--=^1\S6Y
M=M66ULJ2Q J80RF&.0P1E*NH5GBV?,L<VYAC'X;XK*B2+,G_A']T52IDGX4N
M]OJ2J'<+W$)39JBR)W/LD'4_,D91&*,HA3%*7U04692,4AOM"W4R+KP@Q-S=
MH^=9 59>K9P'/N_L5935D[%M3U80WHPB!BC-K5![AFCHA;?&<6,@\HHWA[0N
MR$OHB7@'G:04Z$*VM"Z6UJ4X +JJB'(_WQ&J]<7GA]KY(^"!PFV[)AI@WS6C
MGKM'"C7Z')6V*@UD&EBR:&2AI7D0-Q//G!2TZHH7BZEH51YR_>9[02!,?6]D
M[[J#L1I5NV63&87[&P4[,Y **.2=8FX&-41)74VWO'^K3G89[M,&>A84+,FB
MIND0'+>!<2UT+"$0TL #+C[/<2114,7$+3K"44554L2N4<\](86:V#OB./ 6
MW?ED6A/;M8,06Q.?2-Z[U@N+?NH)D2-$_$9<XIO.P+4&"]BX9,@H*2\JBVK7
M 'U1X $D;ZZBUB2V*<QK4'0\::"MTK\%MBG>25%$7>Z)@/6V6OL&N:EHKP@\
M(C!BW7Y):=^ZL[L<)G&YS2'6G;1JL586<+SG4:N)1!L1VD7-/]%>,XCQ6")5
M>.= H/Q^U^:5FHM:6S*MR>+87==_P,K*SKC*HM[OBUUIU>G>/^?ZYKSN,KR@
M'7BAJ+BKKXA:A3V.+?V+40;+$52!6@$80N^+NK%Z8DUI6N'88ZE:=$3Q85%/
M4T5);DZ?:QL4O5WWGEO N,9:&Q0U)RBZ"<?$%VRJ_=]&88NN^-ISO4735VY!
M2U%$(V?_9^L@-XU7BHJFP'?6VKV$Q\PKQ9>N=!UW*+=UJS?$0H77JQ11D?*=
M,-O&93G47:'GD[R-\*)%61N151.1Q8-%IU-U3_O;#Z>J,DYCEB"N53T0T.,D
M"MN$T'QIRE$O6S+6\RSD%]^;7,"PMCN#:>?G0_Y*5\Z>N\=U?X8?@M >5E#F
MTKMB5RIR:\&;\\S+<)H*Y)FB CA#$PVINHLS6SZI5KF46S:3%%'7VK+9V] Y
M)937P$HI<DE7/Y3@V'SSO2<[0!2_>R N&=GA>US>/KX-+_GGG?00,$44U__*
MEEWZSLBN)L*2VIV1]>9X=J1^0:Z()F?2O"4Y?Q)?HE?1E?JEB#ZGK@,O7%$(
M4Q1^&HV>;08:MU.S/8J&FR0CMX=UM'AN -2\YZ9KCD1Y"M;P8/&%3'0UD5EA
M5S<R7$8;0;8X;;#6*C=1J+)<<';YN'SU<G@@ [G[,T51Z>.N6FSZN&6$,I5!
MB7&;+/8-K>!L\#%';MSKB.+#.5V2RTOWOM%PK@TXCCK@:![$S<1S&]@U)[#[
M1GPA&)L^$2PS-,_*NLFAW>[&J2BW6&N;*]_"=K<%E_Y7,["'@DO"N-D@ZJZ<
M)LJPYAUQA<4S:R.9@UNFP'!0--XAOG;-D@46O!:]L5=<?%KH"<]OKKVN<C8K
ME<N6TFZ',I=T*K<GF32(M\I483OD]@[794:%NHS3O%]SN:]4YEN7+#Q<Q>E*
M8QI$%U#_V79F(;&*<-K>A&\6X:O)WAEGAO(M:*1-7,.UM]7R"D\JIGG>$]=.
M$O?<5#(S-<\;:NNG;5WO^.IZS8.XF7CFOJ[0UD\3[?MW>FP$!*;F$UBS1P+H
MFTS !-*(-!"\61B$IHL#O^G::A.OT&LQ5 9(Q^%BOZU*Z9%40S>'*;$F'S!%
M?CV;/!#_9D3CB^!FKL<I2C:?%LK>V2\H,71=E-5\<<GZL[/:*A3WK*.TK-.R
MSCZLL_8LT7IYJ$%U277O",?8$>SF\=2:9%O5/,5=X;%9Q<6]&"2=@TWS25.<
M'<X,4Y/MSZZLP*OSTK)"Q:S0#&>$:Y^CP:[%KCS2-.>BK>,MU!#RG-I=?2VI
M$:6C%H6\ 5E&L8V#R',OG5-GU'5A!F/!LI]LB[A6@+;  :M@-:2_,Z(5>Z'
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
M6&#TGR(4+B_KF40)^E@7G::WH$<ZFAXTE)9F(+]'RUB)K5A:RVSIMHWRY \
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
MB38>Q0X_^LGH*:*F]T0!II:ET_[?3H4O$10CVP]"86PZHQ@">I%A!&OH08
M<_\T/^1Z$:!Y(VT,T<J *]#(V,XD:FJ?PM,[-0 <ANQ?O7#,!HF\<EA?=,L[
M+!*_,",_<G[O8O+(V(R*D2#,[A#@<[QG'($N)!M=..J073PLO!+3QR59X"_%
M\/R1&@&6_0 KL(1G&X <@RY#?"?-'4,O")-I%L;T*3/"B_"E27'K> 'ES9_>
MR:(*ODI7TM]37, 'IZK^7ICBK&- LK@&\#0-<,0H;4:QVU5%0]+8>-*IK&\?
M+:)3O.I-K(&?)TMX-@.ZAKZAT4,4DC48BVO8 *TNR?2.@@A:74F_-UH'B))/
M>VX0R\.$_.3\RS*C^E'O?23'/5'595&6U8VH5Q>%"H4?;SY58#1PX"/>V5W<
M=:,O:H9!D=H_[?TMF["!_2),V.:NA+PK<K>TG/F-$DMJ(-EJLKL:,(RNV)49
ME/JI#%#>HX#/0*=[M+$ %AO"=V"4<,"I#W&(_RK 7S^ AY WP&ZO0CSU/6LV
M!%E$X8ZU6'I8,'OP,_'C-6FB =A6^_(:)(=C@(!*\L*2-;$+&KHO&5MIXR+#
M@VL5L'5K4E_L@D+&=1NG4D*=NQU@-41#!ZSUY"796*7ELMW0NK!.0]GV7@:\
M75F"&1F=NJ=: B]2*WDPPD&T>-#/B/VT2MU""I^,'#*D&I2-: G7P/EC84 ]
M98#)0>]1>")C>^A$HXG",_PV9IK?G@#EG^ ]4$H., 6=_>>_]H%?/P9",)M.
M :KAV 1(+3OP9U/J%% X 4\P<S"&"<%!"B)+@D DDK/,9<EJP)OO;" 8GC #
MP:BJK.>2-?RE@EGH W]MUAP9QE66>J+4DRF]5/E47V6PM3!O8HX5N\86" JA
MJXAJM[L(O<XZF;KJ+@RWM  PA^!0,.\ 5+WZ-Y'97!PE?I)I QM(ZA,'<QV4
MLV!X]]%!;K1@3:B[Y^H@7F6,C8OT6N9VW(]<1\H##X2XM.7!'B$/AC =L)DY
MQ/D>7F,G8 +ST[F0E[Q9&-@6 N@-21 LN 8^00\^IF" G/I,' ?_A:_ J:4C
MPI,CA[JL,:B#D#& B94QB/( 'TN>C@DN<:P9@<<=A[C(R.'8#!?\CP@;Z-$#
M%D>P*AS!1OU.)<EAB&0+Z\#K;L?%E)"#0#MV^)IT>['+K^$7#!#B1:940S!7
M#FED6C9."O#@-+CH)T#@R/<F<RX4!1),L?7>0362Q:9T61Z$J2ZL^0?@>N;#
MHG$BB$D)];B ^$/Z%B!ZPH =QL%,\%$8@V,',U-$/MM  DRMV6#H&%A/-D31
MU'X0\H-REO4OF!VY;HB+I9]8, TU3;#4B!.6D2#@\F ="=L""58,5@[WDN(Q
M34^7/+(FO/F3S%G9Y/%F>;IWBX^M  GQ/BR6=6P*[]#[>Q^Y?YJF@ &5WR\Y
M!*)L@)_?HT8U6\QU51.UN==Y@]XQ@M8)O0ZU& \F!*09/LEZ6'!.5>DMP:*
M+I+2!GZ[;P)+TC"'V-_;T3PTWOWQ8,7OL&<Z#AG%0W_Z %^?#];'0DMNF]XW
MQ+Z\.6A<]AAT%2(^/9_Q47H0>^B1YNZG?(5-(<6&D&[9^XPOW%JF;[1#=T/
ML RIIH$[%#F?P(/*@E>S1F82QDQ)<P0AY;^Y3;*8(AF19VH>AF-X.L DA945
M(8II0Y .6@'0Z&48S7."C+ 4WG4\D/H-6D.DRLVW'V:)F4PM(%.H8CRF,9!-
MOL1$K2=BYLCKDA\HQA M 6V6' H%_5>IF],9TB1P>J5=N# 36@J.JAIBS] 6
MP>F"TZ,PB<H4!!D</T4[/4@'Y$SSI57&U NHJ3LS'X#K@/ ?L]]C2D5"G;*V
M(X(IFUT4T@Y-XKMEOT"+0TBFZ=UEHZ* 5C*4=9':VA &(TU-B])-^IH()LAV
M*F.'#F9"NQNO[V%F.Q9S&-UP.9V6%5H'.R GCAETB+$!P&4UUP6D=/N;0^SE
MX*T'L5N7J;DE+1=E8A;BMU7)6$$*C2 2=]0.R80ZLID424]'U5T:V^$X]F7B
M\,+!K["Z$'_@H;,(_AT$9NBRPJ?F'/'4"T0)3>M5"*;\M8FMOQ/F09E.X G@
M(4.P!VXA@:@/WEZB,WC[+%H%'YYVX,8>'YN:@*N)&T0)&GP<9>YT/R?:'7 V
M,H<I'VL[!\!R3$R!8:  X.$*W)7,<0:5YF$SP"QW@<E%YE;+VJGT-W$]R^13
M4?F54JZ\/6WO%*ZB;N<JT_7QW%%J<K.C1,T"2!MFL)8T%*A];4MR/G%XTQ-N
M3>?0.76=E@66] )8HGF68%V8G:7S(H6SXK=$?H0=MY_[5.QIS/@$OV/P:SHF
M1)X!O.'' I%V:2ISFP]\/R^#1LVJ]^:+$&VQR,>F):P7"7J!_."^)MDNB.Q)
M%/X"I(Q\E-3F%#R;%QLS%D#N=XI\JK[_&U5(\*/TMVW6F3Y([8Q/8W2<PGE-
ML]8!D,AS2+04)'-.)JOWB:^#B%/V^<,&[]C"- K"'???W9+ FX'&SUFA++VV
M\7?/_T&CB A.YISWZ,5<BM1#6P6,L4B/1<TDB1)$A%+?$$R6PGH@,)F+@T86
M/HI_EH+O;E<6^_U$9WV>*YG, '(X]&9HKM$>VT_8J9&RAP^OX/\I!KB.X !&
M"@Y'>H3OPR34PFZF)R1,>@%T0B -A%89+J9%U:$;>O[KTG2J!"&IK"ZI4]]\
MGJ<*,9,4)=%2.;F%_-$WGTQ-VUIHB5^:2.N!09"D>"*?C&:N%5!O@N8HJ3<Q
M][%@4I JEO!\(OXT:CU;+8/.(TC,KI Y2( $EI<#SRP@81B1!1PZ<("8]X-S
MN@N.94(?F) 2ASJF:@\8HY_VM--4<2"N=O#!.2@)B5(V9T-9%+\FF) =1>4C
M\F1[,Y9I3VNLB4?M99+C19>-EIV8/7U>$H(D= Y6,^*+:%NR\]11!MAF-(.X
M/.QZ_YMJRV%&JRY%8W0,;EP)0>?5IA9Z;M3AL7E0/@M8XC!)JJ6X+T*P3;,*
M@#D+?@-U8"'A;(NE390NIN:7PX@%-S[%##0A3I<_-(.Q,'*\YSD9D5. 3N#T
M8W(7OA?94PCL$PAEPIG@H%/:A&S-%J'1+:J4GU0,PB%4VD$9Z7BICRA+<O3H
M6G44+V[>+@//.38P9)1YCFF^ >94"B99.,TS8XT*HPS3@E<PE[3,"+'=<T$=
M"^$S<9Y(9/]*ZK0II+=&N)M-L#I;M=,> [.N2X(E]2D#/) D6[Y4QG&Q&P]5
M Y/\1' _DPG2DH916&K.K$6,@9MH98,J,C8XB)9IO2*?47Z)ZM@Q-,%*Z8,V
MMF#7'?.6$O:\0%[IR ;('RQZ8@]%B'Y#"DN<Y<]1IF(E! K1FGJ,]T C81^Y
M?<1 BRP+YA@[6$IAN41S&(]DHG+R)L"A+ 49S% +Q=C)#KQ3A:N 5G&0_ZT4
MLM?6)P&XAY46(1I.KTT_+I1C0EI#7JB6(?TF((WP%\0[\!^+T$&"0^Q[IO()
M,CDD*53AC*!OJ9L1E>KH."P?$"W"CAP2[$P"E>R!P:>4$)G%0=,V2ZO?3FP)
MDUR 3Q F88(HC6B(%;FH3"+ ?T G?['F-B]R4=(DG@#0$+ >IS*8@L$J$) T
M121\A56_XCP%%L"2BA>M@3&H61W,CLORL)HU):LE^Q[K3A14#SB:3K) $.(^
MV;[G)EU?E'$HA5CTR5P6F'E.:A@[JOZGID^JFZ],:BAGIH>8F*_@5/U@)54<
M(QB#EIX0$UE@-'/B,2<L<;5:(TXACNIVRMWI0F(*8W/;BF4MP =Z>V@EHY(=
M+=PFM!,C]IK._&!&S=,4<V#8Q&\S_6&A?^1-@8K/B7Q$*@C>']O38)ZEQ+G(
M"Y">CN2R;CBL2B)!V-PT:Q40_XF49F6V/)[=A+M@FO#ASLB<@%-SMMSLO-5L
M?;+/OWC^L^E;G3\\C_+T70B<27GATP?[O%33M?M***3WV!)BS3MTD:E,5/=Q
MLO+G?\^\\.,H6I 3+2A(%L2^CYQ"D^ZK!>%D*<E@]O O4 K4"MG!#\8H,S<:
MFC$8JG:4CZ$)#B,R[PR=SR<2)451%:8:'S#/R>R8%Y 8;N!QG-).NAB^,.L:
M 34?G0HF&Y'0G!+*]E,DY4-G9A$Q-3)XUL2*ZOQLE;>P""$:/%HW3>?ZPL!U
M9S2^1N%!*0 .F BRU/GO*'QC26;JH(YLS,U2.: ]!4G'R7<0.IB1,@OX.00T
M&)-"'.+RA;FZF/>8V)18B_HX<BG$>"F".<%R'9LS'..49Y0,RXKRXN;/J\]I
MV\] 3FE4TP(' J:(G 8QK?NCI5F@%D#LAVG7)>J- :TXFZ+5IM1X1KV/9/3B
M@#@J;+*.3\P$NM2Z3*8DM*/^D=@10?W!G@,(T. QIS V<6P\BL^)^2]TA.:=
M'HP!4TL'@X6TBFJ;4=\?&%]JY)],&TR%3?M08/!T0 T/KVOQ$B/[DFA'B-V"
M&0[/@MOT])$Y!JL6S0.:V/1]\*E8R@8,.BK.H6/:$XKQQ,1%1C)EO8#S'/,Y
MB-Y[G$6S(RNP;5:(H^ UH('A KRT%A+U"#.WUG^BZ8((HS\(.#J3J>.]DH@/
M$]_$CK3[< P!2VR% 9WX<Y"*;%[GP5K$HE1-/)!7CS8Q@<6*$!TRF^9[#A:1
M((RV[&$8CW0+CBZ)W@5I1O@!D:Y'M<O4,8=8)T$?$GU*S!BC%$;3KE5>*;M*
MY9P::1?=4W V&-IP]!G\"K$5^BNH$N+QJ"ZWSU>'C3(DV&88ZQ=D1ML?SB;P
M%%4]U MGHH/!&2HPQ+F??I?JC"%S9(8TF3%S@4' V9@R_XV.?9JV*3;="G2^
MO.FFVCT_LG3,FW[*VX&3N9W(6+^=*'/[C7:*FVE0BIC ?L/V0 O3..6%]3M4
M[-^9[^-@E]E6@&@MH*MI_A/THN,L2:I+$QMJF3Q$=B!<>.=BC/'EY0O84FJ2
M;FB9UX_F(UB&Q>'88\EQ@0N/W6-V$:#RA7>IL9.R Q@-%^=WP*['FYE8,=E_
M+])8C3R9SHRI_3&9ERE<$@2K %MSY S3R)DFR!'>82$:/1D:):/[1D:TGP^T
M\>T,+:"LFAVY^XZ\IZ_*72OZC?DR.&'*N4@<B\&01E>RH6JT3\B<L#((739S
M=]+/LD_>OT\EN=))4+"5'G9"@N? <@.T^9CM,D@VX<3Q"5U.A">@HU@F%6F4
MA^X#.DD6=4#%U350B-@BEJ'9@40T($[J4:P?%S0= "6FVG71D<!<EOV?. 9F
MZ*%?89:4QHO@:$3MB6EK[A.ZA3O.-\W]58KI!-S8/6,#1^XV-D?9M.O+1Q=]
M@J[>G#72-"Z[9+^+WGB(]08]G,EE>P6IDW"#::WY%L+;&'DI]>%'Z2#T$V@6
M"G$2YXPCW,PI:\<S)&X(39PE,R3DV5T&1PLR.'J_!M'OTZ6&D8W;Y.>[0KS(
M=4Y)T+Q#)DFRI4(DD[(>L6@S#LNTF('GFIBV<NP?R%(PZ,H+"XR>*+B=D;+
M++6Y'G*#78_(XLO2[B:_7 ']-KB]%ZZNA$Y'N+G__?)6N+K^<G/[=7!_=7-=
MUIS4B=%C&;Y\&=L/J*#VF0YW\-,RX&+% 4CKF-. G,4_1!S95973/FJ>K,,:
M0F^ZM/F_*Y]J&9O_,X&*EO'IP?^0LPAR/9L\$'\A9;1Z.,$J<%H_!W0;CJR(
M7XY87$[PL^5DA#S(4>5<AR[D6AHJ8Z:+-?1 <5<RJF+ZRT52[F.;MK<O7^F?
M9B!@8EN60PY"P&F)* "U,H:(\I>_6)HF]679(B^J+)^.P\E?SA=0('S#)+#)
MTMP;$$?=I8'E3=&G3;U#==;.MG\#5'>$E8E528G=LCO3?S#!9>[<O/S_[5Q1
M;YLP$/XK?FQ>*/:R+=M#I032+A.K(FBEO3HQ2M H5%N8EOSZ^7PF4-HT(P5,
MI+TD#W$,OK//=_=]=W&XS7U59MM0H,NOS"J/=:P\UDOEL5:51['32M.FIT75
MY8*@[][;/;(UK&M;PX[:&CHB]U9@.18IRZRUG<HJ9N:3_>$,S SKVLRPHV:F
M:[VQ,]0;M:DUNPW:4]TL42RQ[Q/?([,$T\O$39>90I-5&$=U?0T"+'J(R(>(
M5$97$"#SQT= ZG58K,)MCAD,EV^X\EVO 2M>A BG@5NN'KOA*YWSD+ZJ$+JT
M=#]/\7[Y,RUCOB:H(W"^=*..._X'N =;&>H#J@5[-EBNPP>^UX]1.3ACSY@<
M'!XO-4Y%O"CY 52%?DC%G5X;DXH+6:2HAT+QQA-C0O'X(HQ[)H^Y/S4F#\AX
M ^A;8YLTFLMXO4]B>ZF(1A=![6%+*W!4?G0.)775*Y2HZ_,"L_BZKT)9V;IW
M!)!C\$>=-B)RRPV>W9E%JTACR5;6\V1K _T691PWN[D=W]W[TZ"U-&O)IT:T
M1H$[R"7(/=QCB!W^<:4J/1-DFXHLUM0G\00\0,P(:+P(OX$CMPA5+8"&CQ1*
MH0< @2C,$B!C9=@G99W^C':AZ!Y/9L,"&*J71CT"T/]3D_Y\%2H56X\R\!3=
M>KT*_L+?:W%@B")9'2Z-5_@Y[[^0K8!J^A$K'TZN("M+A(W4/5U/HY>_+FMH
MK:G/&WG$H S+M8@?[79I1Z_PUGJ]%Z1=7<E)6QD/Y %\_I09Z1"/^ $+0$=V
M"1J>[[D7SYX]>%N]QTL",SSC_U-8?'Z+Y TH@X*O%IG(*WYUOJ>PNI(FYZY+
MC6GRV:6S63 T\K-IF")P^+@<FJ82EXCH-WPM4K&5FV&]>8BO_@)02P,$%
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
M/*X>&:L<>7YBM(=/?Y%1C67)N$F@C.JJ?!B7S7O-PZ%@:9[$8)#IU"S9W=[
MEA$.>!G1$PPUTN@?_-Q7L,]NL@?LP0>&^0;_>3Q9)"S]R!7,M\F9QYX].>QW
M7W&6^N43P&)2/,$ABENQ JX\]?+\["D"" 5'+P>V&<E;YES;"CDJ/&SS4GNB
M7ARHML*V&*[<J:.BXJ2/A8:6!?=H'A2]'TL )CITPS&_ >V;/(+[ZE^RWA1,
M5WGV7*O%K=_1V,A68/7+L5Y,>R?@]R!%C300>+*E#>CL&X@"Y(9EQWI-Q5,=
M3HDY,I;CXE5*6M !14FHYX2GLXEV!"#OY1 @?Y,.<K!=Y.YAT?FTAL7Q^_M8
M; _OLUMN"Z];_PIXV:+=P1G ZPIGQDD^SD&Y'S&A'[8/CQSN)0WEY9T/2*]!
M(6)?O196C%!!E#9'.LMTU.TD=\*>N<2[MOW9';1,Z\%+T>*%K'C#<#QF[+KJ
M5XQ6G?:GIY3RTT+I-89(Q8G0X)>G%(@K1WE@L2O7%-_4C"U3P17Z,OA/H5[R
MB1EQR,R+"1ESUK4[KZ $ORR+L?!M_YYS%S?W4P7>3(C?A>+#3/G99.E>MP-0
M19M_X5Z+OQ,0_9;]AJ#?LM\L_ =02P,$%     @ QX '5W>LNFM1 P  )PH
M !$   !D-#0P.#$Q9&5X,S(Q+FAT;;U6:T_;,!3]7JG_X4J3H)72-FDWV)HL
M4A\PN@<4Z*;MHYLXC;7$#K8SZ'[]KI.TA#'&8X]2"26^/O?<<\]U[1TM/KSW
MO:.#T=1O-KS%;/'^P#_XW!GTNX[7*Q_Q?:\* /#&)],O/GC3V2??FX/2ZX2^
MWHT$UT/'SC2,)".)FQ*Y8GQH[R+6T6P\6S0;)>(<M\Z!)&S%7P>4:RKOA_#&
M_H1*S2(6$,T$AWDN54ZX!BW >0D?N^?=21?.:5"L.H,7MN7UQOZ3LQ$%HU!D
MFH;U5!M(E.,)F!MVK^P]$!'HF,(YD4O"J>J<7"5T#:- FY6^;??K[.\%W^%+
ME;D/#I]Q" 3G%9U+IN."S&E.)-:2K.&,9D(B%0Z'0J;@V)U3Y-5L3&+4?R7@
MC'VC&G9(FKGP@00QXQ0FH@LM [-SD0OM3D2:$;XN']H0"5GDN-CFR*AD(@3*
M0]3X;8X( ]O"TOL#0/$CEN#K+364+I=,,ZJ \! .KH*8\)5)FJ9,*5,&?DUD
M2#2%F$J*.M;HE!55;"R86?!&TI60:YAVL9SOWX5ETF*!-$)X3*>Q1CB)T'%4
M-AM5OZJJK"+#<@U!84I\SG[IQYUGSMZ^6W:G\*3)02I?U;?4 Q]D#PO7B;;,
M7A.XI*I82M?PE8M+U&Y%AT^P3V'L^[W\;CS=1&5",6.C(5DJD>2:NM?[%BS%
MAAW32S@3*>$50B>AD1X.]C*]Z[><MM=#M#ID/6J_GVF_C%A@F94OHSQ! P78
MB\0X8NL222]R)FF*(ZF,&M?'08NT 1WHO&B%[:VX6T\U&UM#51([KP;/76.U
M1T[6(\/_HI#]QPC9;#".$YF69RF>!9K@"(? RAG:R$Q8,:B2*J.H999)D@!N
MHZ80U%ME*+&RBET1XX0'YCT"AD4MQ;!B5)Z4#1$X]$5.!3<'JOMO=7ZTP0]/
MCA>;L*60(96=I=!:I$,GNP+L#POAF5U\=OV>ZMTZ3;R>@?#__DS5]Y6MM4W_
MCTEJ!OXW#C ^J1SP,]E_-?]W<%TPG3R<[!U'\A]POB-1:RX9^C=# ]_*UO[/
M$DUQQ!ZLT"A?Y7C\[Y>_GO71.#J[:>*A[<:4K6+,XEZR4,?XO^+L/$<VMOE#
M\CUSM0.\@IB+'M[\S 7Q!U!+ P04    " #'@ =7[GJ D'8#  "6"@  $0
M &0T-# X,3%D97@S,C(N:'1MO59M;]I($/Z.Q'\8J5("D@$;VJ3%KB5>$H6V
M"31QJ[N/B[VV5V?O.KOK)OS[SMJ&T/1Z)6E[@(36.SOSS#//C->[""X_^-[%
MV63NMUM>L @^G/EG?_5&P_[0&]1+?#YH# "\Z7+^MP_>?/'9]U:@]":C;X]C
MP?78L0L-$\E(YN9$)HR/[6/T=;&8+@(P#HVC%9Y= <E8PM^&E&LJ?^[CB*]5
MX3[OK#?U9U1J%K.0:"8XK$JI2L(U: '.:_C4O^G/^G!#PVK7&;VR+6\P]9\=
MC2B81*+0--J%:K>T^"6?6W1O[!,0,>B4P@V1:\*IZBWO,[J!2:C-SM"VA_N1
MGDCM3\T7'$+!>0/GCNFT O.Q)!)SR39P30LA$0J'<R'S=LNQ>Q\-L%F*_"<"
MKMD7JN&(Y(4+ER1,&:<P$WWH&#='MZ70[DSD!>&;>M&%6,@JQNTN1D$E$Q%0
M'B''[TKT,+(M3'TX B0_9AD^WD%#ZDK)-*,*"(_@[#Y,"4],T#QG2IDT\&<L
M(Z(II%12A+L'I\ZH06/!PH)+ACYH!N_Z,!6E3"P3=B6I8A&6U#*YTKC=6B).
ME!Q/8!FC^K#4!D @*5&EQ%53R"9=JPJ]WD!8J177Q;\*]>B%<W+JUF6KQ&J"
MDT9P^T?V#0_2C87[!.'C66.XIJK:RC?P#Q=W2&I"QT8HV,6_7UC>^^E\:U4(
MQ8R^QF2M1%9JZCZ<"UB.E;RB=W M<L(;#[V,QGH\.BGTL=]QNMX O>V[W+<Z
M'1;:KRT"3+,1;%QFJ*P0:Y$9J>SD(^EMR23-L;"JW4(Z'@9%AW0!M>F\ZD3=
M';L/:MLIK:'8>3-ZZ1H)/)&9!_/#B/^-3 Z?Q"3CV*IY/61Q2&B"O1WATXJ8
M+<V$51V,S6(8M<PVR3+ 8]3D@7RK AE65G4J9ISP$)^W6^@QJG*IN@C-RDPK
MPZNHVTQP]:BC^L\F^D^8>^?+JV!KMA8RHK*W%EJ+?.P4]X#E81&\L*O/L3]0
M@^V8:;>V<\8;&!^'S_9#E;!_KJZL;<I_17+3\/\A ".31@"/9^*?4NT/L 9,
M9X>#?3RKX;M1_0OP?Q#SV]G?64F&PBY0\>=;C6]C=_]G[N;8>P=3-RF3$M\+
MI_7[=K\'+JZ_5??8=E/*DA2CN'<LTBG^-YB=EXC&-E\$/S W2<!+B[E7XD73
MW$>_ E!+ 0(4 Q0    ( ,> !U=@P .*@P8  "$U   0              "
M 0    !C=G(M,C R,S V,S N>'-D4$L! A0#%     @ QX '5R>4N1<<"
M8V4  !0              ( !L08  &-V<BTR,#(S,#8S,%]C86PN>&UL4$L!
M A0#%     @ QX '5]]<85GV"0  >)0  !0              ( !_PX  &-V
M<BTR,#(S,#8S,%]D968N>&UL4$L! A0#%     @ QX '5RKSH@! )   UM(!
M !0              ( !)QD  &-V<BTR,#(S,#8S,%]L86(N>&UL4$L! A0#
M%     @ QX '5Z8< BQ%%@  K7X! !0              ( !F3T  &-V<BTR
M,#(S,#8S,%]P<F4N>&UL4$L! A0#%     @ QX '5XP34WZP:P  S1(&  \
M             ( !$%0  &0T-# X,3%D,3!Q+FAT;5!+ 0(4 Q0    ( ,>
M!U=FO;CRNP8  &<8   1              "  >V_  !D-#0P.#$Q9&5X,S$Q
M+FAT;5!+ 0(4 Q0    ( ,> !U>@<:"9N 8  & 8   1              "
M =?&  !D-#0P.#$Q9&5X,S$R+FAT;5!+ 0(4 Q0    ( ,> !U=WK+IK40,
M "<*   1              "  ;[-  !D-#0P.#$Q9&5X,S(Q+FAT;5!+ 0(4
M Q0    ( ,> !U?N>H"0=@,  )8*   1              "  3[1  !D-#0P
C.#$Q9&5X,S(R+FAT;5!+!08     "@ * '\"  #CU      !

end
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
